數(shù)據(jù)庫(kù)計(jì)算時(shí)間差的三種函數(shù)和方法實(shí)例代碼
1、SQL Server —— DATEDIFF()函數(shù)用法
1、作用:計(jì)算兩個(gè)日期之間的時(shí)間間隔。
2、語(yǔ)法:
DATEDIFF(datepart,startdate,enddate)
3、參數(shù):
datepart:設(shè)置想要什么格式的時(shí)間差
datepart參數(shù)值 | 對(duì)應(yīng)代表意思 |
---|---|
yyyy、yy、year | 年 |
qq、q、quarter | 季度 |
mm、m、month | 月 |
dd、d、dw、w、day | 日 |
ww、wk、week | 周 |
hh、hour | 小時(shí) |
mi、n、minute | 分鐘 |
ss、s、second | 秒 |
ms、millisecond | 毫秒 |
mcs | 微妙 |
ns | 納秒 |
startdate:開始時(shí)間
enddate:結(jié)束時(shí)間
4、例子:
SELECT DATEDIFF(dd, '2023-09-01', '2023-10-01') AS day; --輸出結(jié)果30,表示:相差30天
2、mySQL —— DATEDIFF()函數(shù)用法
1、作用:計(jì)算兩個(gè)日期之間的時(shí)間間隔,以日為單位。
2、語(yǔ)法:
DATEPART(startdate,enddate)
3、參數(shù):
startdate:開始時(shí)間
enddate:結(jié)束時(shí)間
4、例子:
SELECT DATEDIFF('2023-09-01', '2023-10-01') AS day; --輸出結(jié)果30,表示:相差30天
3、Oracle —— 計(jì)算時(shí)間差函數(shù)
1、作用:計(jì)算兩個(gè)日期之間的時(shí)間間隔。
2、語(yǔ)法:
計(jì)算相差年數(shù):
select floor(((months_between(TO_DATE('2023-10-25','yyyy-mm-dd hh24:mi:ss'),TO_DATE('2001-05-20','yyyy-mm-dd hh24:mi:ss')))/12)) As year from song; --輸出22,表示相差22年
計(jì)算相差月數(shù)
select floor(months_between(TO_DATE('2023-10-25','yyyy-mm-dd hh24:mi:ss'),TO_DATE('2023-05-20','yyyy-mm-dd hh24:mi:ss'))) As month from song; --輸出5,表示:相差5個(gè)月
計(jì)算相差天數(shù)
select TO_NUMBER(TO_DATE('2023-10-25','yyyy-mm-dd hh24:mi:ss')- TO_DATE('2023-09-20','yyyy-mm-dd hh24:mi:ss')) AS day from song; --輸出35,表示相差35天
計(jì)算相差小時(shí)
select TO_NUMBER((TO_DATE('2023-10-25','yyyy-mm-dd hh24:mi:ss')- TO_DATE('2023-10-26','yyyy-mm-dd hh24:mi:ss'))*24) AS hour from song; --輸出24,表示相差24小時(shí)
計(jì)算相差分鐘
select TO_NUMBER((TO_DATE('2023-10-25','yyyy-mm-dd hh24:mi:ss')- TO_DATE('2023-10-26','yyyy-mm-dd hh24:mi:ss'))*24*60) AS minute from song; --輸出1440,表示相差1440分鐘
計(jì)算相差秒數(shù)
select TO_NUMBER((TO_DATE('2023-10-25','yyyy-mm-dd hh24:mi:ss')- TO_DATE('2023-10-26','yyyy-mm-dd hh24:mi:ss'))*24*60*60) AS second from song; --輸出864000,表示相差864000秒
總結(jié)
到此這篇關(guān)于數(shù)據(jù)庫(kù)計(jì)算時(shí)間差的三種函數(shù)和方法的文章就介紹到這了,更多相關(guān)數(shù)據(jù)庫(kù)計(jì)算時(shí)間差函數(shù)和方法內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
SQL Server Alert發(fā)送告警郵件少了的原因
這篇文章主要為大家詳細(xì)介紹了SQL Server Alert發(fā)送告警郵件少了的原因,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-06-06sqlserver 因?yàn)檫x定的用戶擁有對(duì)象,所以無法除去該用戶的解決方法
這篇文章主要介紹了sqlserver 因?yàn)檫x定的用戶擁有對(duì)象,所以無法除去該用戶,因?yàn)槭歉郊訑?shù)據(jù)庫(kù)選擇了與源服務(wù)器一樣的用戶導(dǎo)致2016-04-04SQL?Server實(shí)現(xiàn)group_concat函數(shù)的詳細(xì)舉例
這篇文章主要給大家介紹了關(guān)于SQL?Server實(shí)現(xiàn)group_concat函數(shù)的詳細(xì)舉例,GROUP_CONCAT函數(shù)可以拼接某個(gè)字段值成字符串,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下2023-11-11SQL Server誤區(qū)30日談 第5天 AWE在64位SQL SERVER中必須開啟
在坊間流傳的有關(guān)AWE的設(shè)置的各種版本讓人非常困惑。比如說如何設(shè)置起作用,如何設(shè)置不起作用,在32位和64位上是否需要AWE等2013-01-01使用sqlserver存儲(chǔ)過程sp_send_dbmail發(fā)送郵件配置方法(圖文)
這篇文章用圖文的方式介紹了使用sqlserver存儲(chǔ)過程sp_send_dbmail發(fā)送郵件的方法,大家參考使用吧2014-01-01