SQL SERVER 中GETDATE()函数,以及常用的几种日期格式化

蓝咒 提交于 2021-01-06 12:08:40

SQL SERVER中的日期类型

在SQL SERVER 中用来表示时间日期的类型有两个:date,datetime

图片
date是SQL Server 2008新引进的数据类型。它表示一个日期,不包含时间部分,可以表示的日期范围从公元元年1月1日到9999年12月31日。只需要3个字节的存储空间。

datetime 日期和时间部分,可以表示的日期范围从公元1753年1月1日00:00:00.000 到9999年12月31日23:59:59.997 ,精确到3.33毫秒,它需要8个字节的存储空间。

GETDATE()函数

在SQL SERVER 中想要获取当前时间,可以直接使用GETDATE()函数,它返回的是数据是datatime类型。如下图:

图片

至于如果想直接返回一个date类型的日期,这时候就需要使用CONVERT做日期格式化

select CONVERT(VARCHARGETDATE(), 23)

图片

CONVERT()函数,格式化日期

CONVERT()函数是把日期转换为新数据类型的通用函数,也可以用不同的格式显示日期/时间数据。
语法:CONVERT(data_type(length),date,style)

  • data_type(length) 规定目标数据类型(带有可选的长度)。

  • date指需要转换的日期值。

  • style 规定日期/时间的输出格式。

常用style参考值

Style ID SQL 对应格式
1 SELECT CONVERT(varchar(100), GETDATE(), 1); 12/02/19
2 SELECT CONVERT(varchar(100), GETDATE(), 2); 19.12.02
3 SELECT CONVERT(varchar(100), GETDATE(), 3); 02/12/19
4 SELECT CONVERT(varchar(100), GETDATE(), 4); 02.12.19
5 SELECT CONVERT(varchar(100), GETDATE(), 5); 02-12-19
6 SELECT CONVERT(varchar(100), GETDATE(), 6); 02 12 19
7 SELECT CONVERT(varchar(100), GETDATE(), 7); 12 02, 19
8 SELECT CONVERT(varchar(100), GETDATE(), 8); 23:18:48
9 SELECT CONVERT(varchar(100), GETDATE(), 9); 12  2 2019 11:18:48:007PM
10 SELECT CONVERT(varchar(100), GETDATE(), 10); 12-02-19
11 SELECT CONVERT(varchar(100), GETDATE(), 11); 19/12/02
12 SELECT CONVERT(varchar(100), GETDATE(), 12); 191202
13 SELECT CONVERT(varchar(100), GETDATE(), 13); 02 12 2019 23:18:48:007
14 SELECT CONVERT(varchar(100), GETDATE(), 14); 23:18:48:007
20 SELECT CONVERT(varchar(100), GETDATE(), 20); 2019-12-02 23:21:30
21 SELECT CONVERT(varchar(100), GETDATE(), 21); 2019-12-02 23:21:30.417
22 SELECT CONVERT(varchar(100), GETDATE(), 22); 12/02/19 11:21:30 PM
23 SELECT CONVERT(varchar(100), GETDATE(), 23); 2019-12-02
24 SELECT CONVERT(varchar(100), GETDATE(), 24); 23:21:30
25 SELECT CONVERT(varchar(100), GETDATE(), 25); 2019-12-02 23:21:30.417
100 SELECT CONVERT(varchar(100), GETDATE(), 100); 12  2 2019 11:23PM
101 SELECT CONVERT(varchar(100), GETDATE(), 101); 12/02/2019
102 SELECT CONVERT(varchar(100), GETDATE(), 102); 2019.12.02
103 SELECT CONVERT(varchar(100), GETDATE(), 103); 02/12/2019
104 SELECT CONVERT(varchar(100), GETDATE(), 104); 02.12.2019
105 SELECT CONVERT(varchar(100), GETDATE(), 105); 02-12-2019
106 SELECT CONVERT(varchar(100), GETDATE(), 106); 02 12 2019
107 SELECT CONVERT(varchar(100), GETDATE(), 107); 12 02, 2019
108 SELECT CONVERT(varchar(100), GETDATE(), 108); 23:23:43
109 SELECT CONVERT(varchar(100), GETDATE(), 109); 12  2 2019 11:23:43:040PM
110 SELECT CONVERT(varchar(100), GETDATE(), 110); 12-02-2019
111 SELECT CONVERT(varchar(100), GETDATE(), 111); 2019/12/02
112 SELECT CONVERT(varchar(100), GETDATE(), 112); 20191202
113 SELECT CONVERT(varchar(100), GETDATE(), 113); 02 12 2019 23:23:43:040
114 SELECT CONVERT(varchar(100), GETDATE(), 114); 23:23:43:040
120 SELECT CONVERT(varchar(100), GETDATE(), 120); 2019-12-02 23:26:54
121 SELECT CONVERT(varchar(100), GETDATE(), 121); 2019-12-02 23:26:54.193
126 SELECT CONVERT(varchar(100), GETDATE(), 126); 2019-12-02T23:26:54.193
130 SELECT CONVERT(varchar(100), GETDATE(), 130); 5 ???? ?????? 1441 11:26:54:193PM
131 SELECT CONVERT(varchar(100), GETDATE(), 131); 5/04/1441 11:26:54:193PM


标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!