在oracle中对于时间格式的转换用到的比较多,相对也比较了解,现在换了新的项目组,使用sqlserver数据库,需要对这个数据库的一些常用函数进行重新学习和熟悉,现在根据w3c及网上博文对convert()简单总结下,以备后期使用和帮助后来者。
言归正传:
数据库:sqlServer2008R2 英文版
1.基本语法:
-- CONVERT(DATA_TYPE(LENGTH),DATA_TO_BE_CONVERTED,STYLE_ID)
-------------(目标数据类型,需要转换的值,日期/时间的输出格式)
2.style值及对应时间格式:来自w3school(http://www.w3school.com.cn/sql/func_convert.asp)
3.数据库实测:(查询结果一致的单独在一起,并与其它空行隔开)
select CONVERT(varchar(50),GETDATE(),100); -- Jun 14 2016 2:20PM
select CONVERT(varchar(50),GETDATE(),0); -- Jun 14 2016 2:21PM
select CONVERT(varchar(50),GETDATE(),101); -- 06/14/2016
select CONVERT(varchar(50),GETDATE(),102); -- 2016.06.14
select CONVERT(varchar(50),GETDATE(),103); -- 14/06/2016
select CONVERT(varchar(50),GETDATE(),104); -- 14.06.2016
select CONVERT(varchar(50),GETDATE(),105); -- 14-06-2016
select CONVERT(varchar(50),GETDATE(),106); -- 14 Jun 2016
select CONVERT(varchar(50),GETDATE(),107); -- Jun 14, 2016
select CONVERT(varchar(50),GETDATE(),108); -- 14:36:25
select CONVERT(varchar(50),GETDATE(),109); -- Jun 14 2016 2:37:01:773PM
select CONVERT(varchar(50),GETDATE(),9); -- Jun 14 2016 2:38:11:677PM
select CONVERT(varchar(50),GETDATE(),110); -- 06-14-2016
select CONVERT(varchar(50),GETDATE(),111); -- 2016/06/14
select CONVERT(varchar(50),GETDATE(),112); -- 20160614
select CONVERT(varchar(50),GETDATE(),113); -- 14 Jun 2016 14:41:14:743
select CONVERT(varchar(50),GETDATE(),13); -- 14 Jun 2016 14:45:52:420
select CONVERT(varchar(50),GETDATE(),114); -- 14:47:17:110
select CONVERT(varchar(50),GETDATE(),120); -- 2016-06-14 14:49:56
select CONVERT(varchar(50),GETDATE(),20); -- 2016-06-14 14:50:23
select CONVERT(varchar(50),GETDATE(),121); -- 2016-06-14 14:52:07.213
select CONVERT(varchar(50),GETDATE(),21); -- 2016-06-14 14:52:41.413
select CONVERT(varchar(50),GETDATE(),126); -- 2016-06-14T14:54:04.713
select CONVERT(varchar(50),GETDATE(),130); -- 9 ????? 1437 2:55:18:083PM ---为什么乱码呢? -- dd mon yyyy hh:mi:ss:mmmAM
select CONVERT(varchar(50),GETDATE(),131); -- 9/09/1437 2:56:47:180PM
4.其它待补充