京公网安备 11010802034615号
经营许可证编号:京B2-20210330
sql中关于时间的函数用法整理
GETDATE()
GETDATE()函数从SQL Server 返回当前的时间和日期。
语法:GETDATE()
RETURNSDATETIME
datepart
日期部分的参数
DATEPART
DATEPART()函数用于返回日期/时间的单独部分,比如年、月、日、小时、分钟等等。
语法:DATEPART(datepart,date)
datepart日期参数
date参数是合法的日期表达式
RETURNSINT
DATEADD
DATEADD()函数在日期中添加或减去指定的时间间隔。
语法:DATEADD(datepart,number,date)
datepart日期参数
number是间隔数,对于未来的时间,此数是正数,对于过去的时间,此数是负数
date参数是合法的日期表达式
RETURNSDATETIMESELECT GETDATE();--// 2017-06-20 15:35:27.980
SELECT DATEADD(DAY,1,GETDATE());--// 2017-06-21 15:35:27.980
SELECT DATEADD(DAY,-1,GETDATE());--// 2017-06-19 15:35:27.980
DATEDIFF
DATEDIFF()函数返回两个日期之间的时间。
语法:DATEDIFF(datepart,startdate,enddate)
datepart日期参数
startdate和enddate是合法的日期表达式
RETURNSINT
DATENAME
DATENAME()函数用于返回日期/时间的单独部分,比如年、月、日、小时、分钟等等。
语法:DATENAME(datepart,date)
datepart日期参数
date参数是合法的日期表达式
RETURNSNVARCHAR
示例见DATEPART。
DATENAME与DATEPART的不同
两者的返回值类型不同,DATENAME()返回的是字符串类型(nvarchar),DATEPART()返回的是整数(int)。
YEAR
YEAR()函数用于返回日期的年份。
语法:YEAR(date)
date参数是合法的日期表达式
RETURNSINT
等同于DATEPART(YEAR,date)
MONTH
MONTH()函数用于返回日期的月份。
语法:MONTH(date)
date参数是合法的日期表达式
RETURNSINT
等同于DATEPART(MONTH,date)
DAY
DAY()函数用于返回日期的日。
语法:DAY(date)
date参数是合法的日期表达式
RETURNSINT
等同于DATEPART(DAY,date)
CONVERT
CONVERT()函数是把日期转换为新数据类型的通用函数。
CONVERT()函数可以用不同的格式显示日期/时间数据。
语法:CONVERT(data_type(length),data_to_be_converted,style)
data_type(length)规定目标数据类型(带有可选的长度)
data_to_be_converted含有需要转换的值
style规定日期/时间的输出格式
RETURNSdata_type(length)
可以使用的style值:
SELECT CONVERT(VARCHAR(100), GETDATE(), 0);--// 06 20 2017 4:27PM
SELECT CONVERT(VARCHAR(100), GETDATE(), 1);--// 06/20/17
SELECT CONVERT(VARCHAR(100), GETDATE(), 2);--// 17.06.20
SELECT CONVERT(VARCHAR(100), GETDATE(), 3);--// 20/06/17
SELECT CONVERT(VARCHAR(100), GETDATE(), 4);--// 20.06.17
SELECT CONVERT(VARCHAR(100), GETDATE(), 5);--// 20-06-17
SELECT CONVERT(VARCHAR(100), GETDATE(), 6);--// 20 06 17
SELECT CONVERT(VARCHAR(100), GETDATE(), 7);--// 06 20, 17
SELECT CONVERT(VARCHAR(100), GETDATE(), 8);--// 16:27:36
SELECT CONVERT(VARCHAR(100), GETDATE(), 9);--// 06 20 2017 4:27:36:970PM
SELECT CONVERT(VARCHAR(100), GETDATE(), 10);--// 06-20-17
SELECT CONVERT(VARCHAR(100), GETDATE(), 11);--// 17/06/20
SELECT CONVERT(VARCHAR(100), GETDATE(), 12);--// 170620
SELECT CONVERT(VARCHAR(100), GETDATE(), 13);--// 20 06 2017 16:27:36:970
SELECT CONVERT(VARCHAR(100), GETDATE(), 14);--// 16:27:36:970
SELECT CONVERT(VARCHAR(100), GETDATE(), 20);--// 2017-06-20 16:27:36
SELECT CONVERT(VARCHAR(100), GETDATE(), 21);--// 2017-06-20 16:27:36.970
SELECT CONVERT(VARCHAR(100), GETDATE(), 22);--// 06/20/17 4:27:36 PM
SELECT CONVERT(VARCHAR(100), GETDATE(), 23);--// 2017-06-20
SELECT CONVERT(VARCHAR(100), GETDATE(), 24);--// 16:27:36
SELECT CONVERT(VARCHAR(100), GETDATE(), 25);--// 2017-06-20 16:27:36.970
SELECT CONVERT(VARCHAR(100), GETDATE(), 100);--// 06 20 2017 4:27PM
SELECT CONVERT(VARCHAR(100), GETDATE(), 101);--// 06/20/2017
SELECT CONVERT(VARCHAR(100), GETDATE(), 102);--// 2017.06.20
SELECT CONVERT(VARCHAR(100), GETDATE(), 103);--// 20/06/2017
SELECT CONVERT(VARCHAR(100), GETDATE(), 104);--// 20.06.2017
SELECT CONVERT(VARCHAR(100), GETDATE(), 105);--// 20-06-2017
SELECT CONVERT(VARCHAR(100), GETDATE(), 106);--// 20 06 2017
SELECT CONVERT(VARCHAR(100), GETDATE(), 107);--// 06 20, 2017
SELECT CONVERT(VARCHAR(100), GETDATE(), 108);--// 16:27:36
SELECT CONVERT(VARCHAR(100), GETDATE(), 109);--// 06 20 2017 4:27:36:970PM
SELECT CONVERT(VARCHAR(100), GETDATE(), 110);--// 06-20-2017
SELECT CONVERT(VARCHAR(100), GETDATE(), 111);--// 2017/06/20
SELECT CONVERT(VARCHAR(100), GETDATE(), 112);--// 20170620
SELECT CONVERT(VARCHAR(100), GETDATE(), 113);--// 20 06 2017 16:27:36:970
SELECT CONVERT(VARCHAR(100), GETDATE(), 114);--// 16:27:36:970
SELECT CONVERT(VARCHAR(100), GETDATE(), 120);--// 2017-06-20 16:27:36
SELECT CONVERT(VARCHAR(100), GETDATE(), 121);--// 2017-06-20 16:27:36.970
SELECT CONVERT(VARCHAR(100), GETDATE(), 126);--// 2017-06-20T16:27:36.970
SELECT CONVERT(VARCHAR(100), GETDATE(), 130);--// 26 ????? 1438 4:27:36:970PM
SELECT CONVERT(VARCHAR(100), GETDATE(), 131);--// 26/09/1438 4:27:36:970PM
数据分析咨询请扫描二维码
若不方便扫码,搜微信号:CDAshujufenxi
很多数据分析师画过趋势图、做过业绩预测,但当被问到“这个月销售额增长20%,到底是长期趋势自然增长,还是促销活动的短期 ...
2026-08-21在数据分析与数据可视化工作中,直方图是展示数据分布特征、离散程度、集中区间的核心图表,能够直观呈现数值数据的频次分布规律 ...
2026-08-20在数据分析领域有一句核心准则:垃圾数据进,垃圾数据出。数据清洗是数据分析、数据建模、数据可视化之前的必经前置工序,也是保 ...
2026-08-20 很多数据分析师做过按月份的销售额趋势图,画过按天的流量折线图,但当被问到“时间序列和普通数据有什么本质区别”“季节性 ...
2026-08-20在Python数据分析与数据清洗工作中,Pandas是最核心的数据处理库,DataFrame是结构化数据的标准存储格式。在实时数据采集、循环 ...
2026-08-19在零售行业大数据分析与精细化运营领域,纸尿裤旁摆放啤酒是最经典、最具代表性的商业案例。两种看似毫无关联的商品,一个是婴幼 ...
2026-08-19 很多数据分析师能熟练地计算指标、搭建标签体系,但当被问到“画像到底在解决什么问题”“画像和标签是什么关系”“画像如何 ...
2026-08-19在数据分析、业务监控、质量检测与风险管控工作中,数据波动性是衡量数据稳定性、业务健康度、结果可信度的核心依据。数据波动代 ...
2026-08-18很多分析师在设计标签时思路清晰,但真到落地环节却面临“数据在手,不知如何转化为可用标签”的困境:或因加工方式选择不当导致 ...
2026-08-18在数据分析、业务评价、产品评级、用户分层与综合决策场景中,单一指标往往无法全面、客观地评价事物整体水平。现实中的评价对象 ...
2026-08-18在数理统计、假设检验、数据分析与机器学习领域中,卡方分布(χ²分布)是继正态分布、t分布之后最重要的连续型概率分布之一。 ...
2026-08-17在Python数据清洗、文本校验、账号密码规则校验、脏数据过滤、字符串规整化处理中,正则表达式是最高效、最常用的文本匹配工具。 ...
2026-08-17 很多分析师每天和数据打交道,但当被问到“标签是什么”“标签和指标有什么区别”“标签体系如何设计”时,却常常答不上来。 ...
2026-08-17手游行业具备用户迭代快、竞争激烈、用户粘性易流失的典型特征。随着新游持续上线、玩家审美升级、玩法疲劳等问题出现,存量用户 ...
2026-08-14在数字化产品运营、商业数据分析、业务增长管理中,零散的指标统计无法支撑系统性的业务决策。单一的点击率、转化率、销量数据只 ...
2026-08-14 很多数据分析师每天都在写SQL,但当被问到“数据查询语言(DQL)的本质是什么”“SELECT语句中各子句的书写顺序与实际执行顺 ...
2026-08-14在数据库数据分析、数据清洗、报表统计与业务查询场景中,日期时间是最高频、最核心的基础字段。数据库中存储的日期格式多样,包 ...
2026-08-13在数据统计分析与数据清洗工作中,箱线图是一种简洁高效、客观性强的数据可视化图表,能够直观呈现数据集的分布特征、离散程度和 ...
2026-08-13 很多数据分析师写过无数个SELECT查询,但当被问到“如何新建一张表来固化中间数据”“创建视图和创建物理表有什么区别”“视 ...
2026-08-13在自动化办公、数据采集、定时统计、日志清理、系统监控等场景中,程序往往需要按照固定时间间隔重复执行指定任务,这种运行机制 ...
2026-08-12