<span id="mktg5"></span>

<i id="mktg5"><meter id="mktg5"></meter></i>

        <label id="mktg5"><meter id="mktg5"></meter></label>
        最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
        問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
        當前位置: 首頁 - 科技 - 知識百科 - 正文

        MySQL日期和時間函數講授

        來源:懂視網 責編:小采 時間:2020-11-09 14:02:26
        文檔

        MySQL日期和時間函數講授

        MySQL日期和時間函數講授:MySQL日期和時間函數講解 1. NOW、CURRENT_TIMESTAMP和SYSDATE 這些函數都能返回當前的系統時間,它們之間有區別嗎先來看個例子。 mysqlSELECTNOW(),CURRENT_TIMESTAMP(),SYSDATE()\G; **************************
        推薦度:
        導讀MySQL日期和時間函數講授:MySQL日期和時間函數講解 1. NOW、CURRENT_TIMESTAMP和SYSDATE 這些函數都能返回當前的系統時間,它們之間有區別嗎先來看個例子。 mysqlSELECTNOW(),CURRENT_TIMESTAMP(),SYSDATE()\G; **************************

        MySQL日期和時間函數講解 1. NOW、CURRENT_TIMESTAMP和SYSDATE 這些函數都能返回當前的系統時間,它們之間有區別嗎?先來看個例子。 mysql?SELECT?NOW(),CURRENT_TIMESTAMP(),SYSDATE()\G; ***************************?1. row?*************************** NO

        MySQL日期和時間函數講解

        1. NOW、CURRENT_TIMESTAMP和SYSDATE

        這些函數都能返回當前的系統時間,它們之間有區別嗎?先來看個例子。

        mysql>?SELECT?NOW(),CURRENT_TIMESTAMP(),SYSDATE()\G;
        ***************************?1. row?***************************
        NOW():?2011-02-04?20:35:04
        CURRENT_TIMESTAMP():?2011-02-04?20:35:04
        SYSDATE():?2011-02-04?20:35:04

        從上面的例子看來,3個函數都是返回當前的系統時間,再來看下面這個例子:

        mysql>SELECT
        ->?????NOW(),
        ->???? CURRENT_TIMESTAMP(),
        ->???? SYSDATE(),
        ->???? SLEEP(2),
        ->?????NOW(),
        ->???? CURRENT_TIMESTAMP(),
        ->???? SYSDATE()\G
        ***************************?1. row?***************************
        NOW():?2011-11-29?21:04:49
        CURRENT_TIMESTAMP():?2011-11-29?21:04:49
        SYSDATE():?2011-11-29?21:04:49
        SLEEP(2):?0
        NOW():?2011-11-29?21:04:49
        CURRENT_TIMESTAMP():?2011-11-29?21:04:49
        SYSDATE():?2011-11-29?21:04:51
        1?row in?set?(2.00?sec)

        在上面這個例子中人為地加入了SLEEP函數,讓其等待2秒,這時可以發現SYSDATE返回的時間和NOW及CURRENT_TIMESTAMP是不同的,SYSDATE函數慢了2秒。究其原因是這3個函數有略微區別:

        CURRENT_TIMESTAMP是NOW的同義詞,也就是說兩者是相同的。

        SYSDATE函數返回的是執行到當前函數時的時間,而NOW返回的是執行SQL語句時的時間。

        因此在上面的例子中,兩次執行SYSDATE函數返回不同的時間是因為第二次調用執行該函數時等待了前面SLEEP函數2秒。而對于NOW函數,不管是在SLEEP函數之前還是之后執行,返回的都是執行這條SQL語句時的時間。

        2.時間加減函數

        先來看一個例子。

        mysql>?SELECT?NOW(),NOW()+0\G;
        ***************************?1. row?***************************
        NOW():?2011-02-04?20:46:33
        NOW()+0:?20110204204633.000000
        1?row in?set?(0.00?sec)

        可以看到,NOW()函數可以返回時間,也可以返回一個數字,就看用戶如何使用。如果相對當前時間進行增加或減少,并不能直接加上或減去一個數字,而需要使用特定的函數,如DATE_ADD或DATE_SUB,前者表示增加,后者表示減少。其具體的使用方法有DATE_ADD(date,INTERVAL expr unit)和 DATE_SUB(date,INTERVAL expr unit),示例如下:

        mysql>?SELECT?NOW()?AS?now,
        DATE_ADD(now(),INTERVAL?1?DAY)?AS?tomorrow,
        DATE_SUB(now(),INTERVAL?1?DAY)?AS?yesterday\G;
        ***************************?1. row?***************************
        now:?2011-02-04?20:53:25
        tomorrow:?2011-02-05?20:53:25
        yesterday:?2011-02-03?20:53:25
        1?row in?set?(0.00?sec)

        其中expr值可以是正值也可以是負值,因此可以使用DATE_ADD函數來完成DATE_SUB函數的工作,例如:

        mysql>?SELECT?NOW()?AS?now,
        DATE_ADD(NOW(),INTERVAL?1?DAY)?AS?tomorrow,
        DATE_ADD(NOW(),INTERVAL?-1?DAY)?AS?yesterday\G;
        ***************************?1. row?***************************
        now:?2011-02-04?20:55:40
        tomorrow:?2011-02-05?20:55:40
        yesterday:?2011-02-03?20:55:40
        1?row in?set?(0.00?sec)

        還有一個問題,如果是閏月,那么DATE_ADD函數怎么處理呢?MySQL的默認行為是這樣的:如果目標年份是閏月,那么返回的日期為2月29日;如果不是閏月,那么返回日期是2月28日。示例如下:

        mysql>?SELECT?DATE_ADD(’2000-2-29′,INTERVAL 4 YEAR) AS year;
        +————+
        |?year????????|
        +————+
        |?2004-02-29?|
        +————+
        1?row in?set?(0.00?sec)

        ?

        mysql>?SELECT?DATE_ADD(’2000-2-29′,INTERVAL 1 YEAR) AS year;
        +————+
        |?year????????|
        +————+
        |?2001-02-28?|
        +————+
        1?row in?set?(0.00?sec)

        在上面的例子中使用了DAY和YEAR數據類型,其實也可以使用MICROSECOND、SECOND、MINUTE、HOUR、WEEK、MONTH等類型,例如:

        mysql>?SELECT?NOW()?AS?now,
        DATE_ADD(NOW(), INTERVAL?1?HOUR)?AS?next?time\G;
        ***************************?1. row?***************************
        now:?2011-02-04?21:00:15
        next?time:?2011-02-04?22:00:15
        1?row in?set?(0.00?sec)

         3. DATE_FORMAT函數

        這個函數本身沒有什么需要探討的地方,其作用只是按照用戶的需求格式化打印出日期,例如:

        mysql>?SELECT?DATE_FORMAT(NOW(),’%Y%m%d’) AS datetime;
        +———-+
        | datetime |
        +———-+
        |?20110204?|
        +———-+
        1?row in?set?(0.00?sec)

        但是開發人員往往會錯誤地使用這個函數,導致非常嚴重的后果。例如在需要查詢某一天的數據時,有些開發人員會寫如下的語句:

        SELECT * FROM table WHERE DATE_FORMAT(date,’%Y%m%d’)=’xxxx-xx-xx’;

        一般來說表中都會有一個對日期類型的索引,如果使用上述的語句,優化器絕對不會使用索引,也不可能通過索引來查詢數據,因此上述查詢的執行效率可能非常低。

        1 樓 hunan84229247 2013-10-08

        聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

        文檔

        MySQL日期和時間函數講授

        MySQL日期和時間函數講授:MySQL日期和時間函數講解 1. NOW、CURRENT_TIMESTAMP和SYSDATE 這些函數都能返回當前的系統時間,它們之間有區別嗎先來看個例子。 mysqlSELECTNOW(),CURRENT_TIMESTAMP(),SYSDATE()\G; **************************
        推薦度:
        • 熱門焦點

        最新推薦

        猜你喜歡

        熱門推薦

        專題
        Top
        主站蜘蛛池模板: 国产卡一卡二卡三免费入口| 日韩人妻无码精品久久免费一| 日韩精品无码区免费专区| 91亚洲精品视频| 69视频免费在线观看| 亚洲视频在线观看不卡| 精品国产sm捆绑最大网免费站 | 全黄A免费一级毛片| 免费一级黄色毛片| eeuss免费影院| 久久综合图区亚洲综合图区| 无码AV片在线观看免费| 亚洲天堂一区在线| 成人人免费夜夜视频观看| 国产亚洲精品AAAA片APP| 亚洲日韩人妻第一页| a在线视频免费观看| 亚洲福利电影在线观看| 成年美女黄网站18禁免费| 深夜a级毛片免费视频| 亚洲色欲一区二区三区在线观看 | 亚洲中文字幕久在线| 毛片免费视频播放| 边摸边吃奶边做爽免费视频99| 亚洲精品和日本精品| 久久青草免费91观看| 亚洲av无码一区二区三区天堂古代| 在线成人a毛片免费播放| 一级黄色免费网站| 91亚洲国产成人精品下载| 永久免费无码网站在线观看| 精品久久久久久无码免费| 亚洲图片激情小说| 可以免费观看一级毛片黄a| 久久久久免费精品国产 | 美女羞羞喷液视频免费| 亚洲av无码无在线观看红杏| 日本免费观看网站| 另类免费视频一区二区在线观看| 国产91在线|亚洲| 亚洲精品无码午夜福利中文字幕 |