sql语句中日期时间格式化查询
Convert的使用方法:
格式:Convert(data_type,expression[,style])
说明:此样式一般在时间类型(datetime,smalldatetime)与字符串类型(nchar,nvarchar,char,varchar)相互转换的时候才用到.
例子:Select Convert(varchar(30),getdate(),101) now
结果为: now = 09/15/2001
style数字在转换时间时的含义如下: (2位表示年份:09;4位表示年份:2009) Style(2位表示年份) Style(4位表示年份) 输入输出格式
Style(2位表示年份) | Style(4位表示年份) | 输入输出格式 |
0 | 100 | mon dd yyyy hh:miAM(或PM) |
1 | 101 | mm/dd/yy |
2 | 102 | yymmdd |
3 | 103 | dd/mm/yy |
4 | 104 | ddmmyy |
5 | 105 | ddmmyy |
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 | mmddyy |
11 | 111 | yy/mm/dd |
12 | 112 | yymmdd |
13 | 113 | dd mon yyyy hh:mi:ss:mmm(24小时制) |
14 | 114 | hh:mi:ss:mmm(24小时制) |
20 | 120 | yyyymmdd hh:mi:ss(24小时制) |
21 | 121 | yyyymmdd hh:mi:ss:mmm(24小时制) |
以下示例显示用 style 参数进行转换:
Select CONVERT(char(12), GETDATE(), 3)
此语句把当前日期转换为样式 3,dd/mm/yy。
在这里我附上一些实例:
select CONVERT(varchar, getdate(), 120 )
2004-09-12 11:06:08
select replace(replace(replace(CONVERT(varchar, getdate(), 120 ),'-',''),' ',''),':','')
20040912110608
replace(CONVERT(varchar(12), getdate(),111 ),'/','-')
2004-09-12
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