sql convert函數使用方法小結整理的比較全了,需要的朋友可以參考下。
CONVERT(data_type,expression[,style])
convert(varchar(10),字段名,轉換格式)
說明:
此樣式一般在時間類型(datetime,smalldatetime)與字符串類型(nchar,nvarchar,char,varchar)
相互轉換的時候才用到.
語句 結果
SELECT CONVERT(varchar(100), GETDATE(), 0) 07 15 2009 4:06PM
SELECT CONVERT(varchar(100), GETDATE(), 1) 07/15/09
SELECT CONVERT(varchar(100), GETDATE(), 2) 09.07.15
SELECT CONVERT(varchar(100), GETDATE(), 3) 15/07/09
SELECT CONVERT(varchar(100), GETDATE(), 4) 15.07.09
SELECT CONVERT(varchar(100), GETDATE(), 5) 15-07-09
SELECT CONVERT(varchar(100), GETDATE(), 6) 15 07 09
SELECT CONVERT(varchar(100), GETDATE(), 7) 07 15, 09
SELECT CONVERT(varchar(100), GETDATE(), 8) 16:06:26
SELECT CONVERT(varchar(100), GETDATE(), 9) 07 15 2009 4:06:26:513PM
SELECT CONVERT(varchar(100), GETDATE(), 10) 07-15-09
SELECT CONVERT(varchar(100), GETDATE(), 11) 09/07/15
SELECT CONVERT(varchar(100), GETDATE(), 12) 090715
SELECT CONVERT(varchar(100), GETDATE(), 13) 15 07 2009 16:06:26:513
SELECT CONVERT(varchar(100), GETDATE(), 14) 16:06:26:513
SELECT CONVERT(varchar(100), GETDATE(), 20) 2009-07-15 16:06:26
SELECT CONVERT(varchar(100), GETDATE(), 21) 2009-07-15 16:06:26.513
SELECT CONVERT(varchar(100), GETDATE(), 22) 07/15/09 4:06:26 PM
SELECT CONVERT(varchar(100), GETDATE(), 23) 2009-07-15
SELECT CONVERT(varchar(100), GETDATE(), 24) 16:06:26
SELECT CONVERT(varchar(100), GETDATE(), 25) 2009-07-15 16:06:26.513
SELECT CONVERT(varchar(100), GETDATE(), 100) 07 15 2009 4:06PM
SELECT CONVERT(varchar(100), GETDATE(), 101) 07/15/2009
SELECT CONVERT(varchar(100), GETDATE(), 102) 2009.07.15
SELECT CONVERT(varchar(100), GETDATE(), 103) 15/07/2009
SELECT CONVERT(varchar(100), GETDATE(), 104) 15.07.2009
SELECT CONVERT(varchar(100), GETDATE(), 105) 15-07-2009
SELECT CONVERT(varchar(100), GETDATE(), 106) 15 07 2009
SELECT CONVERT(varchar(100), GETDATE(), 107) 07 15, 2009
SELECT CONVERT(varchar(100), GETDATE(), 108) 16:06:26
SELECT CONVERT(varchar(100), GETDATE(), 109) 07 15 2009 4:06:26:513PM
SELECT CONVERT(varchar(100), GETDATE(), 110) 07-15-2009
SELECT CONVERT(varchar(100), GETDATE(), 111) 2009/07/15
SELECT CONVERT(varchar(100), GETDATE(), 112) 20090715
SELECT CONVERT(varchar(100), GETDATE(), 113) 15 07 2009 16:06:26:513
SELECT CONVERT(varchar(100), GETDATE(), 114) 16:06:26:513
SELECT CONVERT(varchar(100), GETDATE(), 120) 2009-07-15 16:06:26
SELECT CONVERT(varchar(100), GETDATE(), 121) 2009-07-15 16:06:26.513
SELECT CONVERT(varchar(100), GETDATE(), 126) 2009-07-15T16:06:26.513
SELECT CONVERT(varchar(100), GETDATE(), 130) 23 ??? 1430 4:06:26:513PM
SELECT CONVERT(varchar(100), GETDATE(), 131) 23/07/1430 4:06:26:513PM
————————————————————————————————————
3 | 103 英法 | dd/mm/yy
————————————————————————————————————
4 | 104 德國 | dd.mm.yy
————————————————————————————————————
————————————————————————————————————
6 | 106 | dd mon yy
————————————————————————————————————
7 | 107 | mon dd,yy
————————————————————————————————————
8 | 108 | hh:mm:ss
————————————————————————————————————
9 | 109 | mon dd yyyy hh:mi:ss:mmmmAM(或PM)
————————————————————————————————————
10 | 110 美國 | mm-dd-yy
————————————————————————————————————
11 | 111 日本 | yy/mm/dd
————————————————————————————————————
12 | 112 ISO | yymmdd
————————————————————————————————————
13 | 113 歐洲默認值 | dd mon yyyy hh:mi:ss:mmm(24小時制)
————————————————————————————————————
14 | 114 | hh:mi:ss:mmm(24小時制)
————————————————————————————————————
————————————————————————————————————
21 | 121 | yyyy-mm-dd hh:mi:ss:mmm(24小時制)
————————————————————————————————————
( data_type [ ( length ) ] , expression [ , style ] )
默認情況下,SQL Server 根據截止年份 2049 解釋兩位數字的年份。即,兩位數字的年份 49 被解釋為 2049,而兩位數字的年份 50 被解釋為 1950。許多客戶端應用程序(例如那些基于 OLE 自動化對象的客戶端應用程序)都使用 2030 作為截止年份。SQL Server 提供一個配置選項(”兩位數字的截止年份”),借以更改 SQL Server 所使用的截止年份并對日期進行一致性處理。然而最安全的辦法是指定四位數字年份。
——————————————————————————————————————————————-
select getdate()
例如:向日期加上2天
select dateadd(day,2,’2004-10-15′) –返回:2004-10-17 00:00:00.000
select datediff(day,’2004-09-01′,’2004-09-18′) –返回:17
SELECT DATEPART(month, ‘2004-10-15’) –返回 10
SELECT datename(weekday, ‘2004-10-15’) –返回:星期五
–可以與datepart對照一下
DateDiff (interval,date1,date2)
年 1753 ~ 9999
Quarter 季 1 ~ 4
Month 月1 ~ 12
Day of year 一年的日數,一年中的第幾日 1-366
Day 日,1-31
Weekday 一周的日數,一周中的第幾日 1-7
Week 周,一年中的第幾周 0 ~ 51
Hour 時0 ~ 23
Minute 分鐘0 ~ 59
Second 秒 0 ~ 59
Millisecond – 毫秒 0 ~ 999
假如你的第一天設置不一樣,你可能需要調整這些例子,使它和不同的第一天設置相符合。你
下一個函數是DATEADD,增加當前日期到“1900-01-01”的月數。通過增加預定義的日期“1900-01-01”和當前日期的月數,我們可以獲得這個月的第一天。另外,計算出來的日期的時間部分將會是“00:00:00.000”。