SQL Server CONVERT() 函数
1、定义
CONVERT() 函数是把日期转换为新数据类型的通用函数;可以用不同的格式显示日期/时间数据。
2、语法:
CONVERT(data_type(length),data_to_be_converted,style)
data_type(length) 规定目标数据类型(带有可选的长度)。data_to_be_converted 含有需要转换的值。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
3、示例:
CONVERT(VARCHAR(19),GETDATE()) -- Dec 15 2020 17:45 PM
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
--格式化转换 CAST (expression AS data_type [ (length ) ]) CONVERT (data_type [ ( length ) ] , expression [ , style ]) SELECT 'AB' + 1 --此语句报错,在将 varchar 值 'AB' 转换成数据类型 int 时失败。 SELECT 'AB' + CAST(1 AS varchar) --输出 AB1 SELECT 'AB' + CONVERT(varchar,1) --输出 AB1
创建时间:2020.07.21 更新时间:2020.08.25