亚洲免费在线视频-亚洲啊v-久久免费精品视频-国产精品va-看片地址-成人在线视频网

您的位置:首頁技術文章
文章詳情頁

MySQL獲取當前時間的多種方式總結

瀏覽:131日期:2023-02-18 16:43:44
目錄
  • 1 獲取當前完整時間
    • 1.1 now()函數(shù)
    • 1.2 sysdate()函數(shù)
    • 1.3 current_timestamp或current_timestamp()
  • 2.獲取當前日期
    • 2.1使用CURDATE()獲取(推薦)
    • 2.2使用CURRENT_DATE獲取
    • 2.3使用date()格式化
  • 3.獲取當前短時間
    • 3.1使用CURTIME()獲取(推薦)
    • 3.2使用CURRENT_TIME獲取
  • 4.函數(shù)now()和sysdate()的區(qū)別
    • 補充:mysql獲取當前時間+1天_mysql獲取當前時間,前一天,后一天
      • 總結

        1 獲取當前完整時間

        1.1 now()函數(shù)

        select now();

        輸出:

        2023-02-15 10:46:17

        1.2 sysdate()函數(shù)

        select sysdate();

        輸出:

        2023-02-15 10:47:13

        1.3 current_timestamp或current_timestamp()

        current_timestamp和current_timestamp()函數(shù)的效果是一樣的,只不過一個是關鍵字,一個是函數(shù)。它們的效果和now()函數(shù)也是一樣的!

        select current_timestamp;select current_timestamp();

        輸出:

        2023-02-15 10:48:43

        2.獲取當前日期

        獲取當前日期的方式有多種,這里只介紹常用的幾種:

        2.1使用CURDATE()獲取(推薦)

        select CURDATE();

        輸出:

        2023-02-15

        2.2使用CURRENT_DATE獲取

        select current_date;

        輸出:

        2023-02-15

        2.3使用date()格式化

        select date(now());

        輸出:

        2023-02-15

        3.獲取當前短時間

        獲取當前短時間的方式有多種,這里只介紹常用的幾種:

        3.1使用CURTIME()獲取(推薦)

        select CURTIME();

        輸出:

        10:51:42

        3.2使用CURRENT_TIME獲取

        select CURRENT_TIME;

        輸出:

        10:52:26

        4.函數(shù)now()和sysdate()的區(qū)別

        雖然兩者都可以獲取當前的時間,但它們獲取的機制是不同的:

        now()取的是語句開始執(zhí)行的時間

        sysdate()取的是動態(tài)的實時時間

        這么說不明白?先看下面的示例: 

        說明:先查詢NOW()和SYSDATE(),然后sleep3秒,再查詢NOW()和SYSDATE()

        分析結果可得:now()值不發(fā)生改變,sysdate()時間在sleep3秒后發(fā)生改變。也就是說now()獲取的是sql開始執(zhí)行的時間,盡管中間出現(xiàn)了其他的操作,都不會影響其值。而sysdate()會影響。

        補充:mysql獲取當前時間+1天_mysql獲取當前時間,前一天,后一天

        錯誤的sql語句

        eg:SELECT COUNT(*) FROM USER WHERE registerDate >= CURDATE() AND registerDate < CURDATE()+1;

        雖然 獲取到的數(shù)量在測試環(huán)境中是正確的,但在發(fā)布到線上的時候,發(fā)現(xiàn)有的時候數(shù)據(jù)是查詢不到,數(shù)量為0,因此,就上網(wǎng)查詢是不是CURDATE()+1不規(guī)范,發(fā)現(xiàn)mysql官網(wǎng)也是不承認時間直接相加減的,雖然會將當前時間轉(zhuǎn)換為20160802,這時候就是比較這一串字符,mysql官網(wǎng)是不承認用這種方式比較時間大小的,因此:

        正確的sql語句

        eg:SELECT COUNT(*) FROM USER WHERE registerDate >= CURDATE() AND registerDate < DATE_SUB(CURDATE(),INTERVAL -1 DAY);

        此時,就用到了DATE_SUB()這個函數(shù),用法舉例:

        今天是2016年08月01日。

        date_sub("2016-08-01",interval 1 day) 表示 2016-07-31date_sub("2016-08-01",interval 0 day) 表示 2016-08-01date_sub("2016-08-01",interval -1 day) 表示 2016-08-02date_sub(curdate(),interval 1 day) 表示 2016-07-31date_sub(curdate(),interval -1 day) 2016-08-02date_sub(curdate(),interval 1 month) 表示 2016-07-01date_sub(curdate(),interval -1 month) 表示 2016-09-01date_sub(curdate(),interval 1 year) 表示 2015-08-01date_sub(curdate(),interval -1 year) 表示 2017-08-01

        備注:

        SELECT NOW(),CURDATE(),CURTIME()

        結果類似:

        NOW()CURDATE()CURTIME()

        2016-08-01 16:25:46

        2016-08-01

        16:25:46

        總結

        到此這篇關于MySQL獲取當前時間的多種方式總結的文章就介紹到這了,更多相關MySQL獲取當前時間內(nèi)容請搜索以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持!

        標簽: MySQL
        主站蜘蛛池模板: 久草视频中文在线 | xxxwww欧美| 欧美一级高清毛片aaa | 欧美在线一级毛片视频 | 一区二区三区欧美 | 亚洲国产美女视频 | 香蕉久 | 91精品啪在线看国产网站 | 欧美精品v欧洲精品 | 国产精品久久人人做人人爽 | 日本加勒比在线 | 日本aaaa级毛片在线看 | 91情国产l精品国产亚洲区 | 欧美午夜a级精美理论片 | 久久视频在线播放视频99re6 | 性欧美欧美巨大69 | 国产99视频精品免费观看9e | 成人国产网站v片免费观看 成人国产午夜在线视频 | 精品72久久久久久久中文字幕 | 国产手机精品一区二区 | 欧美色88| 成人午夜在线观看国产 | 正在播放国产乱子伦视频 | 免看一级一片一在线看 | 国产一级小视频 | 日韩免费一区二区三区 | 亚洲欧洲日产国码二区首页 | 特级aaa片毛片免费观看 | 成人做爰网站免费看 | 久久国产精品久久精品国产 | 日韩freesex呦交 | 特级欧美视频aaaaaa | 国外免费一级 | 202z欧美成人 | 手机在线播放av | 日本a级特黄三级三级三级 日本a一级片 | 成人午夜亚洲影视在线观看 | 国产精品一二三区 | 亚洲欧美精品中文字幕 | 91国在线啪精品一区 | 欧美高清视频在线观看 |