2010-07-28 2 views
14

날짜를 [1-31] ​​및 월 [1-12]과 1 년 (all int)으로 변환하려면 어떻게해야합니까? (varchar로 변환하지 않고) 직렬 SQL에서 날짜로 변환 하시겠습니까? 당신이 사용할 수 있도록SQL에서 날짜가 연속됩니까?

+0

VARCHAR로 변환하지 않고, 당신이 ISO 날짜를 구축하는 'YYYY-MM-dd' 제외되는 의미 있다고? – pascal

+0

ISO 날짜를 알고 있습니다. 하지만 실제로 작동합니까? MS-SQL 2005에서? 그리고 가능한 모든 언어/문화 조합 (운영 체제, 사용자, 데이터베이스 사용자, IIS 사용자). 예, 표준이라고 알고 있지만, 저는 소위 표준에 대한 믿음이 더 이상 없다고 말해야합니다. 게다가 varchar가 없으면 빠릅니다. –

+0

"날짜 연쇄"란 무엇입니까? – onedaywhen

답변

27

제로, SQL 1900년 1월 01 :

DATEADD(day, @dayval-1, 
    DATEADD(month, @monthval-1, 
     DATEADD(year, @yearval-1900, 0) 
    ) 
) 

편집 2 월 2018 년

다른 대답은 (원래 답 이후에 출시) SQL 서버 2012 이후, 말하기를 우리는 몇 가지 기능은 당신이 이 작업을 수행 할 수있는 SQL 서버 2012에 추가 된 DATEFROMPARTS

SELECT DATEFROMPARTS (@yearval, @monthval, @dayval) 
+0

쿨 - 고마워! 우아함을 위해 –

+0

+1. 고맙습니다! – RubyTuesdayDONO

+0

미래의 다른 사람들을 돕기 위해 여기에 의견을 말하면서 날짜 연재를 조정하는 데 어려움을 겪었습니다.이 답변을 통해이 문제를 해결할 수있었습니다. SQL의 날짜 연쇄는 Excel과 1 일 차이가납니다! –