sqlserver CONVERT()函数用法小结

时间:2021-11-23 04:44:18

CONVERT的使用方法: 

格式: 
CONVERT(data_type,expression[,style]) 
说明: 
此样式一般在时间类型(datetime,smalldatetime)与字符串类型(nchar,nvarchar,char,varchar) 
相互转换的时候才用到. 
例子: 
SELECT CONVERT(varchar(30),getdate(),101) now 
结果为 
now 
--------------------------------------- 
09/15/2001 

style数字在转换时间时的含义如下 
------------------------------------------------------------------------------------------------- 
Style(2位表示年份) | Style(4位表示年份) | 输入输出格式 
------------------------------------------------------------------------------------------------- 
- | 0 or 100 | mon dd yyyy hh:miAM(或PM) 
------------------------------------------------------------------------------------------------- 
1 | 101 | mm/dd/yy 
------------------------------------------------------------------------------------------------- 
2 | 102 | 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 or 109 | mon dd yyyy hh:mi:ss:mmmmAM(或PM) 
------------------------------------------------------------------------------------------------- 
10 | 110 | mm-dd-yy 
------------------------------------------------------------------------------------------------- 
11 | 111 | yy/mm/dd 
------------------------------------------------------------------------------------------------- 
12 | 112 | yymmdd 
------------------------------------------------------------------------------------------------- 
- | 13 or 113 | dd mon yyyy hh:mi:ss:mmm(24小时制) 
------------------------------------------------------------------------------------------------- 
14 | 114 | hh:mi:ss:mmm(24小时制) 
------------------------------------------------------------------------------------------------- 
- | 20 or 120 | yyyy-mm-dd hh:mi:ss(24小时制) 
------------------------------------------------------------------------------------------------- 
- | 21 or 121 | yyyy-mm-dd hh:mi:ss:mmm(24小时制) 
------------------------------------------------------------------------------------------------- 
可以使用的 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

SqlServer之Convert 函数应用 

Select CONVERT(varchar(100), GETDATE(), 0): 05 16 2006 10:57AM 
Select CONVERT(varchar(100), GETDATE(), 1): 05/16/06 
Select CONVERT(varchar(100), GETDATE(), 2): 06.05.16 
Select CONVERT(varchar(100), GETDATE(), 3): 16/05/06 
Select CONVERT(varchar(100), GETDATE(), 4): 16.05.06 
Select CONVERT(varchar(100), GETDATE(), 5): 16-05-06 
Select CONVERT(varchar(100), GETDATE(), 6): 16 05 06 
Select CONVERT(varchar(100), GETDATE(), 7): 05 16, 06 
Select CONVERT(varchar(100), GETDATE(), 8): 10:57:46 
Select CONVERT(varchar(100), GETDATE(), 9): 05 16 2006 10:57:46:827AM 
Select CONVERT(varchar(100), GETDATE(), 10): 05-16-06 
Select CONVERT(varchar(100), GETDATE(), 11): 06/05/16 
Select CONVERT(varchar(100), GETDATE(), 12): 060516 
Select CONVERT(varchar(100), GETDATE(), 13): 16 05 2006 10:57:46:937 
Select CONVERT(varchar(100), GETDATE(), 14): 10:57:46:967 
Select CONVERT(varchar(100), GETDATE(), 20): 2006-05-16 10:57:47 
Select CONVERT(varchar(100), GETDATE(), 21): 2006-05-16 10:57:47.157 
Select CONVERT(varchar(100), GETDATE(), 22): 05/16/06 10:57:47 AM 
Select CONVERT(varchar(100), GETDATE(), 23): 2006-05-16 
Select CONVERT(varchar(100), GETDATE(), 24): 10:57:47 
Select CONVERT(varchar(100), GETDATE(), 25): 2006-05-16 10:57:47.250 
Select CONVERT(varchar(100), GETDATE(), 100): 05 16 2006 10:57AM 
Select CONVERT(varchar(100), GETDATE(), 101): 05/16/2006 
Select CONVERT(varchar(100), GETDATE(), 102): 2006.05.16 
Select CONVERT(varchar(100), GETDATE(), 103): 16/05/2006 
Select CONVERT(varchar(100), GETDATE(), 104): 16.05.2006 
Select CONVERT(varchar(100), GETDATE(), 105): 16-05-2006 
Select CONVERT(varchar(100), GETDATE(), 106): 16 05 2006 
Select CONVERT(varchar(100), GETDATE(), 107): 05 16, 2006 
Select CONVERT(varchar(100), GETDATE(), 108): 10:57:49 
Select CONVERT(varchar(100), GETDATE(), 109): 05 16 2006 10:57:49:437AM 
Select CONVERT(varchar(100), GETDATE(), 110): 05-16-2006 
Select CONVERT(varchar(100), GETDATE(), 111): 2006/05/16 
Select CONVERT(varchar(100), GETDATE(), 112): 20060516 
Select CONVERT(varchar(100), GETDATE(), 113): 16 05 2006 10:57:49:513 
Select CONVERT(varchar(100), GETDATE(), 114): 10:57:49:547 
Select CONVERT(varchar(100), GETDATE(), 120): 2006-05-16 10:57:49 
Select CONVERT(varchar(100), GETDATE(), 121): 2006-05-16 10:57:49.700 
Select CONVERT(varchar(100), GETDATE(), 126): 2006-05-16T10:57:49.827 
Select CONVERT(varchar(100), GETDATE(), 130): 18 ???? ?????? 1427 10:57:49:907AM 
Select CONVERT(varchar(100), GETDATE(), 131): 18/04/1427 10:57:49:920AM