2024年3月5日发(作者:)
不带世纪数位 (yy)
-
1
2
3
4
5
6
7
8
-
10
11
12
-
14
-
-
带世纪数位
(yyyy)
0 或 100 (*)
101
102
103
104
105
106
107
108
9 或 109 (*)
110
111
112
13 或 113 (*)
114
20 或 120 (*)
21 或 121 (*)
默认值
美国
ANSI
标准
输入/输出**
mon dd yyyy hh:miAM(或
PM)
mm/dd/yyyy
dd/mm/yy
dd-mm-yy
dd mon yy
mon dd, yy
hh:mm:ss
mon dd yyyy
hh:mi:ss:mmmAM(或
PM)
mm-dd-yy
yy/mm/dd
yymmdd
dd mon yyyy
hh:mm:ss:mmm(24h)
hh:mi:ss:mmm(24h)
yyyy-mm-dd
hh:mm:ss[.fff]
yyyy-mm-dd
hh:mm:ss[.fff]
yyyy-mm-dd
Thh:mm:ss:mmm(不含空格)
dd mon yyyy
hh:mi:ss:mmmAM
dd/mm/yy
hh:mi:ss:mmmAM
英国/法国
德国
意大利
-
-
-
默认值 + 毫秒
美国
日本
ISO
欧洲默认值 + 毫秒
-
ODBC 规范
ODBC 规范(带毫秒)
- 126(***) ISO8601
-
-
130*
131*
科威特
科威特
* 默认值(style 0 或 100、9 或 109、13 或 113、20 或 120、21 或 121)始终返回世纪数位 (yyyy)。
** 当转换为 datetime 时输入;当转换为字符数据时输出。
*** 专门用于 xml。对于从 datetime 或 smalldatetime 到 character 数据的转换,输
出格式如表中所示。对于从 float、money 或 smallmoney 到 character 数据的转换,输出等同于 style 2。对于从 real到 character 数据的转换,输出等同于 style 1。
重要 默认情况下,SQL Server 根据截止年份 2049 解释两位数字的年份。即,两位数字的年份 49 被解释为 2049,而两位数字的年份 50 被解释为 1950。许多客户端应用程序(例如那些基于 OLE 自动化对象的客户端应用程序)都使用 2030 作为截止年份。SQL Server 提供一个配置选项("两位数字的截止年份"),借以更改 SQL Server
所使用的截止年份并对日期进行一致性处理。然而最安全的办法是指定四位数字年份。
当从 smalldatetime 转换为字符数据时,包含秒或毫秒的样式将在这些位置上显示零。当从datetime 或 smalldatetime 值进行转换时,可以通过使用适当的 char 或 varchar 数据类型长度来截断不需要的日期部分。
下表显示了从 float 或 real 转换为字符数据时的 style 值。
值
1
2
在下表中,左列表示从 money 或 smallmoney 转换为字符数据时的 style 值。
值
0(默认值)
1
2
输出
小数点左侧每三位数字之间不以逗号分隔,小数点右侧取两位数,例如
4235.98。
小数点左侧每三位数字之间以逗号分隔,小数点右侧取两位数,例如
3,510.92。
小数点左侧每三位数字之间不以逗号分隔,小数点右侧取四位数,例如
4235.9819。
使用 CONVERT:
CONVERT (data_type[(length)], exPRession [, style])
输出
始终为 8 位值。始终使用科学记数法。
始终为 16 位值。始终使用科学记数法。
0(默认值) 最大为 6 位数。根据需要使用科学记数法。
select CONVERT(varchar, getdate(), 120 )
2004-09-12 11:06:08
select replace(replace(replace(CONVERT(varchar, getdate(), 120 ),'-',''),'
',''),':','')
28
select CONVERT(varchar(12) , getdate(), 111 )
2004/09/12
select CONVERT(varchar(12) , getdate(), 112 )
20040912
select CONVERT(varchar(12) , getdate(), 102 )
2004.09.12
select CONVERT(varchar(12) , getdate(), 101 )
09/12/2004
select CONVERT(varchar(12) , getdate(), 103 )
12/09/2004
select CONVERT(varchar(12) , getdate(), 104 )
12.09.2004
select CONVERT(varchar(12) , getdate(), 105 )
12-09-2004
select CONVERT(varchar(12) , getdate(), 106 )
12 09 2004
select CONVERT(varchar(12) , getdate(), 107 )
09 12, 2004
select CONVERT(varchar(12) , getdate(), 108 )
11:06:08
select CONVERT(varchar(12) , getdate(), 109 )
09 12 2004 1
select CONVERT(varchar(12) , getdate(), 110 )
09-12-2004
select CONVERT(varchar(12) , getdate(), 113 )
12 09 2004 1
select CONVERT(varchar(12) , getdate(), 114 )
11:06:08.177


发布评论