【SQL】字串〔西元(yyyymmdd)〕轉日期格式
通常在撰寫程式中,會用字串(yyyymmdd EX:20121205)來代表日期,字串的好處方便直接相加減與拆開合併及轉換(西元<->民國)等運用,然而要寫入日期格式欄位時,就必須做轉換。轉換方是很多種,一種是將字串(yyyymmdd)轉換成(yyyy/mm/dd)或(yyyy-mm-dd)格式填入;另一種最快的方式直接運用SQL內建函數做轉換,格式為CONVERT(datetime, 'yyyymmdd')即可。前提之下字串(yyyymmdd)必須要是合法的日期。所以在寫入前,最好先做判斷。
PS:要測試(yyyymmdd)是否為合法日期可以下ISDATE函數
select ISDATE ('20130105') as T
輸出:1 代表合法日期
select ISDATE ('20121131') as T
輸出:0 代表不合法日期
字串[西元(yyyymmdd)]轉日期格式
select CONVERT(datetime, '20121205') as date_1
輸出:2012-12-05 00:00:00.000
參考資料:
http://msdn.microsoft.com/zh-tw/library/ms187347.aspx
MSDN ISDATE() 說明
註:Convert 日期用法可參考My blog
留言
張貼留言