SQL表的時(shí)間類內(nèi)置函數(shù)舉例詳解
我們?cè)谇懊娴奈恼轮幸呀?jīng)了解了關(guān)于表的增刪查改,今天我們來學(xué)習(xí)一些表的內(nèi)置函數(shù)。
1. 日期函數(shù)
下面這個(gè)表格是我們?cè)诮酉聛硪M(jìn)行講解的函數(shù),我們現(xiàn)在這里簡(jiǎn)單介紹了它們的名字以及他們的作用,這邊之所以這么設(shè)計(jì)是因?yàn)槲覀儗W(xué)到后面的話這些函數(shù)我們已經(jīng)了解了,這樣先寫在前面方便我們查閱。
| 函數(shù)名稱 | 描述 |
|---|---|
| current_date() | 當(dāng)前日期 |
| current_time() | 當(dāng)前時(shí)間 |
| current_timestamp() | 當(dāng)前時(shí)間戳 |
| date(datetime) | 返回 datetime 參數(shù)的日期部分 |
| date_add(date, interval d_value_type) | 在 date 中添加日期或時(shí)間interval 后的數(shù)值單位可以是:year minute second day |
| date_sub(date, interval d_value_type) | 在 date 中減去日期或時(shí)間interval 后的數(shù)值單位可以是:year minute second day |
| datediff(date1, date2) | 兩個(gè)日期的差,單位是天 |
| now() | 當(dāng)前日期時(shí)間 |
1.1 current_date()
這個(gè)函數(shù)的作用就是返回當(dāng)前輸出指令的時(shí)間。
語法:
select current_date();
一般來說在SQL里面使用函數(shù)我們直接在前面加一個(gè)select然后接函數(shù)就可以了。
我們看下面這張圖,就直接這樣寫那么就可以輸出當(dāng)前的年月日。

PS:在 SQL 中,current_date() 是一個(gè)函數(shù)(用于返回當(dāng)前日期),它本身不能直接作為表中列的數(shù)據(jù)類型。表中列的數(shù)據(jù)類型需要指定為具體的類型(如 DATE、DATETIME 等),而 current_date() 更像是一個(gè) “值生成工具”。
1.2 current_time()
這個(gè)函數(shù)的作用就是返回當(dāng)前的時(shí)間。
語法:
select current_time();
我們看下面這個(gè)圖片,當(dāng)我們使用這個(gè)函數(shù)的時(shí)候,它返回的是當(dāng)前的時(shí)分秒,

注意:我們不可以像下面這樣寫,不可以用這樣的方式直接顯示出年月日時(shí)分秒。

1.3 current_timestamp()
這個(gè)函數(shù)的作用是返回當(dāng)前時(shí)間戳。
語法:
select current_timestamp();
時(shí)間戳:指 1970 年 1 月 1 日 00:00:00 UTC,也稱為 “紀(jì)元時(shí)間”,開始經(jīng)過的秒數(shù)、毫秒數(shù)等形式來表示。
當(dāng)然時(shí)間戳并不是只有一串?dāng)?shù)字的形式,我們也可以把它轉(zhuǎn)化成時(shí)間,我們看下面這個(gè)圖片,但我們使用這個(gè)函數(shù)的時(shí)候返回的是當(dāng)前的年月日時(shí)分秒。

1.4 date(datetime)
這個(gè)函數(shù)的話就是可以返回括號(hào)里面的日期,簡(jiǎn)單來說就是用戶輸入年月日時(shí)分秒,然后這個(gè)函數(shù)返回里面的年月日。
語法:
select * date(輸入日期);
我們看下面這個(gè)圖片,就想下面這樣就可以返回日期。

我們也可以像下面這樣去把這個(gè)date當(dāng)做一個(gè)變量的類型。

1.5 date_add(date, interval d_value_type)
這個(gè)函數(shù)有點(diǎn)類似于上面的那個(gè)date,這個(gè)函數(shù)的話就是先輸入一個(gè)日期,,然后我們?cè)诘诙€(gè)輸入interval x day,那返回的結(jié)果就是在第一個(gè)日期基礎(chǔ)上加上x天。
語法:
select date_add('日期',interval x day);像下面這個(gè)張圖,我們這樣寫就可以在2025-10-30這個(gè)日期上加上10天。

1.6 date_sub(date, interval d_value_type)
這個(gè)函數(shù)的話正好與上面這一個(gè)函數(shù)相反,它的話是返回date-value的值。
語法:
select date_sub('日期',interval x day);我們看下面這個(gè)圖片,這樣我們就得到了比2025-10-30少10天的日期。

1.7 datediff(date1, date2)
這個(gè)函數(shù)也比較簡(jiǎn)單,就是返回date1-date2的天數(shù)。
語法:
select datediff('A日期','B日期');我們看下面這個(gè)圖片,這樣得到的結(jié)果就是A減去B的天數(shù)。

1.8 now()
這個(gè)函數(shù)的話就是返回輸入這行指令的年月日時(shí)分秒。
語法:
select now();
我們看下面這張圖片,這樣就可以返回現(xiàn)在的年月日時(shí)分秒。

總結(jié)
到此這篇關(guān)于SQL表的時(shí)間類內(nèi)置函數(shù)舉例詳解的文章就介紹到這了,更多相關(guān)SQL表時(shí)間類內(nèi)置函數(shù)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
mysql 5.7.9 winx64在windows上安裝遇到的問題
mysql5.7.9版本以上在windwos上安裝時(shí)會(huì)遇到無法啟動(dòng)但是沒有任何報(bào)錯(cuò)的問題,怎么回事呢?接下來通過本文給大家介紹mysql 5.7.9 winx64在windows上安裝遇到的問題及解決方法,需要的朋友可以參考下2016-10-10
linux 安裝 mysql 8.0.19 詳細(xì)步驟及問題解決方法
這篇文章主要介紹了linux 安裝 mysql 8.0.19 詳細(xì)步驟,本文給大家列出了常見問題及解決方法,通過實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-02-02
mysql-5.7.42升級(jí)到mysql-8.2.0(二進(jìn)制方式)
隨著數(shù)據(jù)量的增長(zhǎng)和業(yè)務(wù)需求的變更,我們可能需要升級(jí)MySQL,本文主要介紹了mysql-5.7.42升級(jí)到mysql-8.2.0(二進(jìn)制方式),具有一定的參考價(jià)值,感興趣的可以了解一下2024-03-03
MySQL中字符集與排序規(guī)則的實(shí)現(xiàn)
本文主要介紹了MySQL中字符集與排序規(guī)則的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2026-01-01
MySQL8.x使用GRANT為用戶賦權(quán)時(shí)報(bào)錯(cuò)的解決
這篇文章主要介紹了MySQL8.x使用GRANT為用戶賦權(quán)時(shí)報(bào)錯(cuò)的解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-04-04
圖解Mysql中的LEFT?JOIN、RIGHT?JOIN與JOIN的區(qū)別
這篇文章主要介紹了圖解Mysql中的LEFT?JOIN、RIGHT?JOIN與JOIN的區(qū)別,Left?Join就是以左邊為基準(zhǔn),Inner?Join就是查兩個(gè)重復(fù)的部分,Right?Join就是以右邊為基準(zhǔn),需要的朋友可以參考下2023-11-11

