SQL Server中,Convert可以实现SQL Server日期转换,格式控制是由CONVERT (data_type[(length)], expression [, style])中的style来完成的 。下面列出了style取各种值时的效果:
在表中,左侧的两列表示将 datetime 或 smalldatetime 转换为字符数据的 style 值 。给 style 值加 100,可获得包括世纪数位的四位年份 (yyyy) 。
不带世纪数位 (yy) |
带世纪数位 (yyyy) |
标准 |
输入/输出** |
- |
0 或 100 (*) |
默认值 |
mon dd yyyy hh:miAM(或 PM) |
1 |
101 |
美国 |
mm/dd/yyyy |
2 |
102 |
ANSI |
yy.mm.dd |
3 |
103 |
英国/法国 |
dd/mm/yy |
4 |
104 |
德国 |
dd.mm.yy |
5 |
105 |
意大利 |
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:mmmAM(或 PM) |
10 |
110 |
美国 |
mm-dd-yy |
11 |
111 |
日本 |
yy/mm/dd |
12 |
112 |
ISO |
yymmdd |
- |
13 或 113 (*) |
欧洲默认值 + 毫秒 |
dd mon yyyy hh:mm:ss:mmm(24h) |
14 |
114 |
- |
hh:mi:ss:mmm(24h) |
- |
20 或 120 (*) |
ODBC 规范 |
yyyy-mm-dd hh:mm:ss[.fff] |
- |
21 或 121 (*) |
ODBC 规范(带毫秒) |
yyyy-mm-dd hh:mm:ss[.fff] |
- |
126(***) |
ISO8601 |
yyyy-mm-dd Thh:mm:ss:mmm(不含空格) |
- |
130* |
科威特 |
dd mon yyyy hh:mi:ss:mmmAM |
- |
131* |
科威特 |
dd/mm/yy hh:mi:ss:mmmAM |
默认值(style 0 或 100、9 或 109、13 或 113、20 或 120、21 或 121)始终返回世纪数位 (yyyy) 。