当前位置: 代码网 > it编程>数据库>MsSqlserver > SQL Server日期时间加减函数(DATEDIFF、DateAdd)的使用

SQL Server日期时间加减函数(DATEDIFF、DateAdd)的使用

2024年05月19日 MsSqlserver 我要评论
一、时间加减函数之datediff1.datediff语法datediff(datepart,startdate,enddate)描述:datepart: 时间类型 比如天、周、年startdate、

一、时间加减函数之datediff

1.datediff语法

datediff(datepart,startdate,enddate)
描述:
datepart: 时间类型 比如天、周、年
startdate、enddate :是开始时间和结束时间

2. datepart: 时间类型

datepart缩写
yy, yyyy
季度qq, q
mm, m
年中的日dy, y
dd, d
wk, ww
星期dw, w
小时hh
分钟mi, n
ss, s
毫秒ms
微妙mcs
纳秒ns

3.datediff示列

select datediff(hh,'2023-05-07 16:00:00',getdate()); --1,两时间相比较小时相差1个小时
select datediff(yy,'2020-05-07 16:00:00',getdate()); --3,两时间相比较小时相差3年

二、时间的加减函数之 dateadd

1.dateadd语法

dateadd(datepart,number,date)
描述:
datepar :时间规格(年、月、日等)
number: 加减数量
date :以什么时间为准

2. datepart: 时间类型

datepart缩写
yy, yyyy
季度qq, q
mm, m
年中的日dy, y
dd, d
wk, ww
星期dw, w
小时hh
分钟mi, n
ss, s
毫秒ms
微妙mcs
纳秒ns

3.dateadd示列

select dateadd(week, 1, getdate()); --2023-05-14 17:40:25.960 当前时间加一周
select dateadd(mm, 5, getdate()); --2023-10-07 17:41:35.910 当前时间加5个月
select dateadd(yy, -1, getdate()); --2022-05-07 17:42:22.337 当前时间减1年

三、其它日期加减函数

1.datepart

语法

datepart (datepart,getdate())
–-返回代表指定日期的指定日期部分的整数。
select datepart(mm, getdate()); --返回 5 
select datepart(week, getdate()); --返回 19 

2.datename

语法

datename (datepart,getdate())
–-返回代表指定日期的指定日期部分的字符串
select datename(dw, getdate()); --返回:星期日
select datename(wk, getdate()); --返回 19 今年的19周

四、总结

函数参数/功能
datediff (datepart,date1,date2)以datepart指定的方式,返回date2 与date1两个日期之间的差值 date2-date1
dateadd (datepart,number,date)以datepart指定的方式,加上number之后的日期
datepart (datepart,date)返回日期date中,datepart指定部分所对应的整数值
datename (datepart,date)返回日期date中,datepart指定部分所对应的字符串名称

到此这篇关于sql server日期时间加减函数(datediff、dateadd)的使用的文章就介绍到这了,更多相关sql  datediff、dateadd 内容请搜索代码网以前的文章或继续浏览下面的相关文章希望大家以后多多支持代码网! 

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com