datediff用法
datediff是SQL SERVER里面的用法,ORACLE没有
一、作用:返回两个日期之间的时间间隔
二、语法:datediff(datepart,startdate,enddate)
是后面日期减去前面的日期(enddate-startdate)
1、datepart,规定应在日期的哪一部分计算差额
日期 缩写
year yy/yyyy
quarter qq/q
Month mm/m
day dd/d
Hour hh/h
minute mi,n
second ss,s
三、测试
SQL SERVER不用像ORACLE一样写 select ... from dual,只需要写select ....就可以了
1、参数是 yyyy的话,统计相差的年份,截取前4位进行统计
select datediff(yyyy,'20210928','20200121')test --select datediff(year,'20210928','20200121')test --select datediff(yy,'20210928','20200121')test
2、参数是 qq时,统计相差的季度
select datediff(qq,'20210928','20200121')test --select datediff(q,'20210928','20200121')test --select datediff(quarter,'20210928','20200121')test
3、参数是 mm的时候,统计相差的月份,截取前6位进行统计
select datediff(mm,'20210928','20200121')test --select datediff(m,'20210928','20200121')test --select datediff(month,'20210928','20200121')test
4、参数是 dd的时候,统计相差的天数
select datediff(dd,'20210928','20200121')test --select datediff(day,'20210928','20200121')test --select datediff(d,'20210928','20200121')test
5、参数是 hh的时候,统计相差的小时
select datediff(hour,'20211112 10:00:00','20211112 00:00:00')test_hour ,datediff(hh,'20211112 10:00:00','20211112 00:00:00')test_hh
6、参数是 mi的时候,统计相差的分钟数
select datediff(minute,'20211112 10:00:00','20211112 00:00:00')test_minute ,datediff(mi,'20211112 10:00:00','20211112 00:00:00')test_mi ,datediff(n,'20211112 10:00:00','20211112 00:00:00')test_n
7、参数是 ss的时候,统计相差的秒数
select datediff(second,'20211112 10:00:00','20211112 00:00:00')test_second ,datediff(ss,'20211112 10:00:00','20211112 00:00:00')test_ss ,datediff(s,'20211112 10:00:00','20211112 00:00:00')test_s
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 记一次.NET内存居高不下排查解决与启示