SQL SERVER中时间格式的全部样式
SQL SERVER中时间格式的全部样式
CONVERT(data_type,expression[,style])
convert(varchar(10),字段名,转换格式)
说明:
此样式一般在时间类型(datetime,smalldatetime)与字符串类型(nchar,nvarchar,char,varchar)
相互转换的时候才用到.
-----------------------------------------------------------------------------------------------------------------------------------
|
样式 (常用样式标记了颜色) |
样例 (以2011年5月16日9:57:08为例) |
说明 |
| SELECT CONVERT(varchar(100), GETDATE(), 0) |
05 16 2011 9:57AM |
MM DD YYYY H:MPM |
| SELECT CONVERT(varchar(100), GETDATE(), 1) | 05/16/11 | MM/DD/YY |
| SELECT CONVERT(varchar(100), GETDATE(), 2) | 11.05.16 | YY.MM.DD |
| SELECT CONVERT(varchar(100), GETDATE(), 3) | 16/05/11 | DD/MM/YY |
| SELECT CONVERT(varchar(100), GETDATE(), 4) | 16.05.11 | DD.MM.YY |
| SELECT CONVERT(varchar(100), GETDATE(), 5) | 16-05-11 | DD-MM-YY |
| SELECT CONVERT(varchar(100), GETDATE(), 6) | 16 05 11 | DD MM YY |
| SELECT CONVERT(varchar(100), GETDATE(), 7) | 05 16, 11 | MM DD, YY |
| SELECT CONVERT(varchar(100), GETDATE(), 8) | 09:57:08 | HH:MM:SS |
| SELECT CONVERT(varchar(100), GETDATE(), 9) | 05 16 2011 9:57:08:827AM | MM DD YYYY H:MM:SS.fffPM |
| SELECT CONVERT(varchar(100), GETDATE(), 10) | 05-16-11 | MM-DD-YY |
| SELECT CONVERT(varchar(100), GETDATE(), 11) | 11/05/16 | YY/MM/DD |
| SELECT CONVERT(varchar(100), GETDATE(), 12) | 110516 | YYMMDD |
| SELECT CONVERT(varchar(100), GETDATE(), 13) | 16 05 2011 09:57:08:937 | DD MM YYYY HH:MM:SS:fff |
| SELECT CONVERT(varchar(100), GETDATE(), 14) | 09:57:08:967 | 时间(带冒号毫秒)HH:MM:SS:fff |
| SELECT CONVERT(varchar(100), GETDATE(), 20) | 2011-05-16 09:57:08 | YYYY-MM-DD HH:MM:SS |
| SELECT CONVERT(varchar(100), GETDATE(), 21) | 2011-05-16 09:57:47.157 | YYYY-MM-DD HH:MM:SS.fff |
| SELECT CONVERT(varchar(100), GETDATE(), 22) | 05/16/11 10:57:47 AM | MM/DD/YY H:MM:SS PM |
| SELECT CONVERT(varchar(100), GETDATE(), 23) | 2011-05-16 | YYY-MM-DD |
| SELECT CONVERT(varchar(100), GETDATE(), 24) | 09:57:08 | HH:MM:SS |
| SELECT CONVERT(varchar(100), GETDATE(), 25) | 2011-05-16 09:57:08.250 | YYYY-MM-DD HH:MM:SS.fff |
| SELECT CONVERT(varchar(100), GETDATE(), 100) | 05 16 2011 9:57AM | MM DD YYYY H:MMPM |
| SELECT CONVERT(varchar(100), GETDATE(), 101) | 05/16/2011 | MM/DD/YY |
| SELECT CONVERT(varchar(100), GETDATE(), 102) | 2011.05.16 | YYYY.MM.DD |
| SELECT CONVERT(varchar(100), GETDATE(), 103) | 16/05/2011 | DD/MM/YYYY |
| SELECT CONVERT(varchar(100), GETDATE(), 104) | 16.05.2011 | DD.MM.YYYY |
| SELECT CONVERT(varchar(100), GETDATE(), 105) | 16-05-2011 | DD-MM-YYYY |
| SELECT CONVERT(varchar(100), GETDATE(), 106) | 16 05 2011 | DD MM YYYY |
| SELECT CONVERT(varchar(100), GETDATE(), 107) | 05 16, 2011 | DD MM, YYYY |
| SELECT CONVERT(varchar(100), GETDATE(), 108) | 09:57:08 | HH:MM:SS |
| SELECT CONVERT(varchar(100), GETDATE(), 109) | 05 16 2011 9:57:08:437AM | MM DD YYYY H:MM:SS:fffPM |
| SELECT CONVERT(varchar(100), GETDATE(), 110) | 05-16-2011 | MM-DD-YYYY |
| SELECT CONVERT(varchar(100), GETDATE(), 111) | 2011/05/16 | YYYY/MM/DD |
| SELECT CONVERT(varchar(100), GETDATE(), 112) | 20110516 | YYYYMMDD |
| SELECT CONVERT(varchar(100), GETDATE(), 113) | 16 05 2011 09:57:08:513 | DD MM YYYY |
| SELECT CONVERT(varchar(100), GETDATE(), 114) | 10:57:49:547 | HH:MM:SS:fff |
| SELECT CONVERT(varchar(100), GETDATE(), 120) | 2011-05-16 09:57:49 | YYYY-MM-DD HH:MM:SS |
| SELECT CONVERT(varchar(100), GETDATE(), 121) | 2011-05-16 09:57:49.700 | YYYY-MM-DD HH:MM:SS.fff |
| SELECT CONVERT(varchar(100), GETDATE(), 126) | 2011-05-16T09:57:49.827 | YYYY-MM-DDTHH:MM:SS.fff |
| SELECT CONVERT(varchar(100), GETDATE(), 127) | 2011-05-16T09:57:49.827 | 同126,无空格 |
|
SELECT CONVERT(varchar(100), GETDATE(), 130) SELECT CONVERT(nvarchar(100), GETDATE(), 130) |
18 ???? ?????? 1427 09:57:08:907AM 18 ذو القعدة 1427 9:57:08:907AM |
乱码 nvarchar正常 |
| SELECT CONVERT(varchar(100), GETDATE(), 131) | 18/11/1427 9:57:08:907AM |
DD?/MM?/YYYY? H:MM:SS.fff (差异:0578-06-07) |
常用样式: SELECT CONVERT(varchar(100), GETDATE(), xx) 1)纯日期: 111(国际标准/), 23(中国格式-); 112(纯数字的日期) 2)纯时间: 108 和 8 和 24(都是标准时间格式) 纯时间带毫秒:114(毫秒部分用冒号:) 3)日期+时间: 120 和 20(都是标准日期时间) 4)日期+时间带毫秒: 121 和 21 和25(都是标准日期时间);
5) 日期+时间不含空格: 126 和 127 (日期和时间中间的空格换成T)
速记法: 20-日期时间(21-日期时间带毫秒), 23-纯日期, 24-纯时间;
日期其它常用格式:111(国际标准/,Excel) ,112(纯数字日期)
------------------------------------------------------------------------------------------------------------------------------------
可以使用的 style 值:
|
Style ID |
Style 格式 |
|
100 或者 0 |
mon dd yyyy hh:miAM (或者 PM) |
|
101 |
mm/dd/yy |
|
102 |
yy.mm.dd |
|
103 |
dd/mm/yy |
|
104 |
dd.mm.yy |
|
105 |
dd-mm-yy |
|
106 |
dd mon yy |
|
107 |
Mon dd, yy |
|
108 |
hh:mm:ss |
|
109 或者 9 |
mon dd yyyy hh:mi:ss:mmmAM(或者 PM) |
|
110 |
mm-dd-yy |
|
111 |
yy/mm/dd |
|
112 |
yymmdd |
|
113 或者 13 |
dd mon yyyy hh:mm:ss:mmm(24h) |
|
114 |
hh:mi:ss:mmm(24h) |
|
120 或者 20 |
yyyy-mm-dd hh:mi:ss(24h) |
|
121 或者 21 |
yyyy-mm-dd hh:mi:ss.mmm(24h) |
|
126 |
yyyy-mm-ddThh:mm:ss.mmm(没有空格) |
|
130 |
dd mon yyyy hh:mi:ss:mmmAM |
|
131 |
dd/mm/yy hh:mi:ss:mmmAM |
参考资料:
https://learn.microsoft.com/zh-cn/sql/t-sql/functions/format-transact-sql?view=sql-server-ver16&redirectedfrom=MSDN
https://learn.microsoft.com/zh-cn/previous-versions/msdn10/dd391745(v=MSDN.10)

浙公网安备 33010602011771号