博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
SQL SERVER 中日期格式化,及GETDATE()、CONVERT()函数使用说明
阅读量:7080 次
发布时间:2019-06-28

本文共 3275 字,大约阅读时间需要 10 分钟。

1. 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个字节的存储空间。

2. GETDATE()函数,返回当前日期时间(datetime类型)

SELECT GETDATE();返回2017-03-16 09:10:08.947

例如创建表格M

CREATE TABLE [dbo].[M](    [id] [int] NULL,    [日期] [date] NULL,    [时间] [datetime] NULL) ON [PRIMARY]

可以使用GETDATE()函数插入数据

INSERT INTO M(id, 日期, 时间) VALUES (1, CONVERT(VARCHAR, GETDATE(), 110), GETDATE());

3. CONVERT()函数,格式化日期

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

语法:

CONVERT(data_type(length),date,style)
  • data_type(length) 规定目标数据类型(带有可选的长度)。date指需要转换的值。style 规定日期/时间的输出格式。
  • 可以使用的 style 值:当前时间2017年1月3日 09:09:10:037
Style ID SQL 对应格式
1 SELECT CONVERT(varchar(100), GETDATE(), 1); 01/03/17
2 SELECT CONVERT(varchar(100), GETDATE(), 2); 17.01.03
3 SELECT CONVERT(varchar(100), GETDATE(), 3); 03/01/17
4 SELECT CONVERT(varchar(100), GETDATE(), 4); 03.01.17
5 SELECT CONVERT(varchar(100), GETDATE(), 5); 03-01-17
6 SELECT CONVERT(varchar(100), GETDATE(), 6); 03 01 17
7 SELECT CONVERT(varchar(100), GETDATE(), 7); 01 03, 17
8 SELECT CONVERT(varchar(100), GETDATE(), 8); 09:09:10
9 SELECT CONVERT(varchar(100), GETDATE(), 9); 01 3 2017 9:09:10:037AM
10 SELECT CONVERT(varchar(100), GETDATE(), 10); 01-03-17
11 SELECT CONVERT(varchar(100), GETDATE(), 11); 17/01/03
12 SELECT CONVERT(varchar(100), GETDATE(), 12); 170103
13 SELECT CONVERT(varchar(100), GETDATE(), 13); 03 01 2017 09:09:10:037
14 SELECT CONVERT(varchar(100), GETDATE(), 14); 09:09:10:037
20 SELECT CONVERT(varchar(100), GETDATE(), 20); 2017-01-03 09:09:10
21 SELECT CONVERT(varchar(100), GETDATE(), 21); 2017-01-03 09:09:10.037
22 SELECT CONVERT(varchar(100), GETDATE(), 22); 01/03/17 9:09:10 AM
23 SELECT CONVERT(varchar(100), GETDATE(), 23); 2017-01-03
24 SELECT CONVERT(varchar(100), GETDATE(), 24); 09:09:10
25 SELECT CONVERT(varchar(100), GETDATE(), 25); 2017-01-03 09:09:10.037
100 SELECT CONVERT(varchar(100), GETDATE(), 100); 01 3 2017 9:09AM
101 SELECT CONVERT(varchar(100), GETDATE(), 101); 01/03/2017
102 SELECT CONVERT(varchar(100), GETDATE(), 102); 2017.01.03
103 SELECT CONVERT(varchar(100), GETDATE(), 103); 03/01/2017
104 SELECT CONVERT(varchar(100), GETDATE(), 104); 03.01.2017
105 SELECT CONVERT(varchar(100), GETDATE(), 105); 03-01-2017
106 SELECT CONVERT(varchar(100), GETDATE(), 106); 03 01 2017
107 SELECT CONVERT(varchar(100), GETDATE(), 107); 01 03, 2017
108 SELECT CONVERT(varchar(100), GETDATE(), 108); 09:09:10
109 SELECT CONVERT(varchar(100), GETDATE(), 109); 01 3 2017 9:09:10:037AM
110 SELECT CONVERT(varchar(100), GETDATE(), 110); 01-03-2017
111 SELECT CONVERT(varchar(100), GETDATE(), 111); 2017/01/03
112 SELECT CONVERT(varchar(100), GETDATE(), 112); 20170103
113 SELECT CONVERT(varchar(100), GETDATE(), 113); 03 01 2017 09:09:10:037
114 SELECT CONVERT(varchar(100), GETDATE(), 114); 09:09:10:037
120 SELECT CONVERT(varchar(100), GETDATE(), 120); 2017-01-03 09:09:10
121 SELECT CONVERT(varchar(100), GETDATE(), 121); 2017-01-03 09:09:10.037
126 SELECT CONVERT(varchar(100), GETDATE(), 126); 2017-01-03T09:09:10.037
130 SELECT CONVERT(varchar(100), GETDATE(), 130); 5 ???? ?????? 1438 9:09:10:037AM
131 SELECT CONVERT(varchar(100), GETDATE(), 131); 5/04/1438 9:09:10:037AM

转载地址:http://bqpml.baihongyu.com/

你可能感兴趣的文章
大数据时代 数据中心面临三大挑战
查看>>
《网络空间欺骗:构筑欺骗防御的科学基石》一3.3.4 识别和量化恶意软件的指标...
查看>>
自动化是任何云计算的基础
查看>>
密码提取神器 mimikatz 现已支持Windows 10 RS2
查看>>
老生常谈数据中心节能
查看>>
Check Point 指出2016 下半年勒索软件倍增
查看>>
微服务和容器对企业带来什么样的影响?
查看>>
如何掌握好应用程序的数据和未来发展
查看>>
“免费WiFi午餐”到底要怎么“吃”?
查看>>
2016首都网络安全日系列活动之打击电信网络诈骗宣传体验展
查看>>
Python vs R : 在机器学习和数据分析领域中的对比
查看>>
利用大数据发展业务的五个维度
查看>>
基于机器学习方法对销售预测的研究
查看>>
Linux桌面系统的优势
查看>>
Windows 10 KB3124200补丁无法安装的临时解决方案
查看>>
OpenStack隐忧初现?创始者之一Nebula公司宣布倒闭
查看>>
驾好“三套车”,打造大数据产业的竞争力
查看>>
VSAN加密大揭秘
查看>>
欧洲空间局使用蜘蛛丝传感器,帮助寻找火星生命
查看>>
20M的Wi-Fi能用百兆宽带?给大家科普下
查看>>