最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

MySQL學(xué)習(xí)之日期函數(shù)的用法詳解

 更新時間:2022年08月12日 09:52:06   作者:不渴望力量的哈士奇  
本文將學(xué)習(xí)MySQL的日期函數(shù),在前面章節(jié)的練習(xí)中,我們就利用過NOW()函數(shù)來獲取過當前系統(tǒng)時間,用DATEDIFF函數(shù)來計算日期相差的天數(shù),接下來我們就系統(tǒng)的學(xué)習(xí)一下 日期函數(shù)

獲取 系統(tǒng)時間 函數(shù)

“NOW()” 函數(shù) 能夠獲得當前系統(tǒng)日期和時間,格式如下:“YYYY-MM-DD hh:mm:ss” (這里的小時單位是 24 小時制)

“CURDATE()” 函數(shù) 能夠獲取到當前系統(tǒng)的日期,格式如下:“YYYY-MM-DD”

“CURTIME()” 函數(shù) 能夠獲得當前系統(tǒng)時間,格式如下:“hh:mm:ss” (24小時制)

SELECT NOW();            -- 返回結(jié)果 "2020-06-10 17:22:51"  (示例)
SELECT CURDATE();        -- 返回結(jié)果 "2020-06-10"
SELECT CURTIME();        -- 返回結(jié)果 "17:22:52"

日期格式化 函數(shù)

“DATE_FORMAT()” 函數(shù) 用于格式化日期,可以幫助我們提取出非常有用的日期信息

語法如下:

DATE_FORMAT(日期, 表達式)

SELECT ename, DATE_FORMAT(hiredate,"%Y") AS "入職日期" FROM t_emp;

占位符作用占位符作用
%Y年份%m月份
%d日期%w星期(數(shù)字)- (0為周日)
%W星期(名稱)- (英文)%j本年的第幾天
%U本年的第幾周%H小時(24)
%h小時(12)%i分鐘
%s%r時間(24)
%T 時間(12)  

日期函數(shù)練習(xí)①

利用 “日期函數(shù)” ,查詢生日那天是周幾。

SELECT DATE_FORMAT("2018-01-01","%W");        -- 返回結(jié)果為 "Monday"

日期函數(shù)練習(xí)②

利用 “日期函數(shù)” ,查詢 1981 年上半年入職的員工人數(shù)有多少人?

SELECT COUNT(*)
FROM t_emp
WHERE DATE_FORMAT(hiredate,"%Y") = 1981
AND DATE_FORMAT(hiredate,"%m") <= 6;

日期計算的注意事項

在 MySQL 中,兩個日期之間是不能夠直接進行相加或相減的;同時,日期也是不能夠與數(shù)字進行相加、減的。

原因在于,日期是一個特殊計算單位,而且進制之間也不是普通的十進制那樣。

雖然我們使用 日期 去進行 “+1” 的操作不會產(chǎn)生語法上的錯誤,但是得到的結(jié)果是純數(shù)字,而不是我們想要的日期格式的結(jié)果。(示例如下)

SELECT ename, hiredate, hiredate+1 FROM t_emp;

日期偏移計算

DATE_ADD() 函數(shù) 可以實現(xiàn)日期的偏移計算,并且在 時間單位的處理上,比較的靈活。

語法如下:

SELECT DATE_ADD("原始日期", INTERVAL, 偏移量, 時間單位)        -- INTERVAL 是 關(guān)鍵字

"DATE_ADD() 函數(shù)" 演示案例如下

SELECT DATE_ADD(NOW(), INTERVAL 10 DAY);         -- 得到的結(jié)果為 10 天 之后的日期時間
SELECT DATE_ADD(NOW(), INTERVAL -500 MINUTE);         -- 得到的結(jié)果為 500 分鐘 之前的日期時間
SELECT DATE_ADD(DATE_ADD(NOW(), INTERVAL -6 MONTH), INTERVAL -3 DAY);         -- 得到的結(jié)果為 6 個月 3 天 之前的日期時間
SELECT 
DATE_FORMAT(
DATE_ADD(DATE_ADD(NOW(), INTERVAL -6 MONTH), INTERVAL -3 DAY) , "%Y-%m-%d") AS DATE;     -- 返回 "%Y-%m-%d" 格式結(jié)果

計算日期之間相隔的天數(shù)

DATEDIFF() 函數(shù) 用來計算兩個日期之間相差的天數(shù),語法如下:

DATEDIFF("日期", "日期")

查詢 10 部門中年收入超過 15000 且工齡超過 20年 的員工的信息。

SELECT empno, ename, sal, hiredate
FROM t_emp
WHERE deptno = 10 
AND (sal + IFNULL(comm,0)) * 12 >=15000
AND DATEDIFF(NOW(),hiredate)/365 >= 20

-- IFNULL(expr1,expr2):IFNULL 函數(shù)的語法,當?shù)谝粋€參數(shù)的值為null 的時候,則返回第二個參數(shù)的值
-- DATEDIFF(expr1,expr2):DATEDIFF 函數(shù)的語法,計算第一個日期與第二個日期的偏差時間差
-- NOW():NOW 函數(shù)可以獲得當前日期

到此這篇關(guān)于MySQL學(xué)習(xí)之日期函數(shù)的用法詳解的文章就介紹到這了,更多相關(guān)MySQL日期函數(shù)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Mysql數(shù)據(jù)庫介紹及mysql顯示命令

    Mysql數(shù)據(jù)庫介紹及mysql顯示命令

    這篇文章主要介紹了Mysql數(shù)據(jù)庫介紹及mysql顯示命令 的相關(guān)資料,需要的朋友可以參考下
    2016-04-04
  • MySQL重啟之后無法寫入數(shù)據(jù)的問題排查及解決

    MySQL重啟之后無法寫入數(shù)據(jù)的問題排查及解決

    客戶在給系統(tǒng)打補丁之后需要重啟服務(wù)器,數(shù)據(jù)庫在重啟之后,read_only 的設(shè)置與標準配置 文件中不一致,導(dǎo)致主庫在啟動之后無法按照預(yù)期寫入,所以本文給大家介紹了MySQL重啟之后無法寫入數(shù)據(jù)的問題排查及解決,需要的朋友可以參考下
    2024-05-05
  • Ubuntu中MySQL的參數(shù)文件my.cnf示例詳析

    Ubuntu中MySQL的參數(shù)文件my.cnf示例詳析

    這篇文章主要給大家介紹了關(guān)于Ubuntu中MySQL的參數(shù)文件my.cnf的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家學(xué)習(xí)或者使用mysql具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2018-10-10
  • mysql字符集引起的java.sql.SQLException:Incorrect?string?value:問題

    mysql字符集引起的java.sql.SQLException:Incorrect?string?value:問題

    文章主要介紹了在MySQL數(shù)據(jù)庫中插入生僻字和emoji表情包時遇到的字符編碼問題,解釋了utf8和utf8mb4的區(qū)別,并提供了修改數(shù)據(jù)庫編碼格式和更改MySQL參數(shù)的解決方案
    2024-11-11
  • MYSQL 表的全面總結(jié)

    MYSQL 表的全面總結(jié)

    這篇文章主要介紹了MYSQL表,文章主要圍繞MySQL表的相關(guān)資料如創(chuàng)建表、刪除表、修改表、等展開內(nèi)容,需要的朋友可以參考一下,希望對你有所幫助
    2021-11-11
  • mysql在項目中怎么選事務(wù)隔離級別

    mysql在項目中怎么選事務(wù)隔離級別

    Mysql默認的事務(wù)隔離級別是可重復(fù)讀,那互聯(lián)網(wǎng)項目中Mysql也是用默認隔離級別,但在項目中呢,下面我們就一起來了解一下
    2021-05-05
  • MySQL取出隨機數(shù)據(jù)

    MySQL取出隨機數(shù)據(jù)

    MySQL 如何從表中取出隨機數(shù)據(jù) 以前在群里討論過這個問題,比較的有意思.mysql的語法真好玩.
    2008-04-04
  • Mysql數(shù)據(jù)庫性能優(yōu)化一

    Mysql數(shù)據(jù)庫性能優(yōu)化一

    今天,數(shù)據(jù)庫的操作越來越成為整個應(yīng)用的性能瓶頸了,這點對于Web應(yīng)用尤其明顯。關(guān)于數(shù)據(jù)庫的性能,這并不只是DBA才需要擔(dān)心的事,而這更是我們程序員需要去關(guān)注的事情
    2016-04-04
  • 解決Linux安裝mysql 在/etc下沒有my.cnf的問題

    解決Linux安裝mysql 在/etc下沒有my.cnf的問題

    這篇文章主要介紹了解決Linux安裝mysql 在/etc下沒有my.cnf的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-01-01
  • MySQL中的UTF-8與UTF8MB4:差異解析方式

    MySQL中的UTF-8與UTF8MB4:差異解析方式

    MySQL中UTF-8和UTF8MB4的區(qū)別在于編碼范圍、存儲需求和兼容性,UTF-8可以表示大多數(shù)常見的字符,但對于一些罕見的字符和emoji表情等,可能無法正確表示,而UTF8MB4則可以表示幾乎所有的Unicode字符,包括那些UTF-8無法表示的字符,在選擇字符集時
    2024-12-12

最新評論

三原县| 清河县| 上蔡县| 嫩江县| 镇沅| 江达县| 红河县| 周宁县| 北碚区| 铜陵市| 宜君县| 樟树市| 博兴县| 辉县市| 胶南市| 永仁县| 荔波县| 永宁县| 报价| 历史| 阿图什市| 九龙坡区| 特克斯县| 灵台县| 三都| 攀枝花市| 赣州市| 济阳县| 武川县| 乌鲁木齐县| 若尔盖县| 甘孜县| 宜阳县| 淮北市| 平昌县| 伊金霍洛旗| 渭南市| 长泰县| 木里| 昌图县| 炎陵县|