<form id="hz9zz"></form>
  • <form id="hz9zz"></form>

      <nobr id="hz9zz"></nobr>

      <form id="hz9zz"></form>

    1. 明輝手游網中心:是一個免費提供流行視頻軟件教程、在線學習分享的學習平臺!

      mysql日期與時間

      [摘要]剛一開始肯定會有很多同學對mysql獲取時間不了解,今天我們就來詳細的講一下mysql的時間和日期,對于mysql時間和日期不了解的同學可以多看看哦~一、日期時間獲取1,1獲取當前本地的日期和時間S...
      剛一開始肯定會有很多同學對mysql獲取時間不了解,今天我們就來詳細的講一下mysql的時間和日期,對于mysql時間和日期不了解的同學可以多看看哦~

      一、日期時間獲取

      1,1獲取當前本地的日期和時間

      SELECT 
          NOW(), 
          CURRENT_TIMESTAMP(), 
          LOCALTIME(), 
          LOCALTIMESTAMP(),
          SYSDATE();

      上面5個函數都可以獲取當前本地時間,但SYSDATE有所不同。

      SELECT NOW(), SLEEP(3), NOW();

      執行結果:

      NOW()                  sleep(3)     NOW()
      2017-11-09 17:21:09    0            2017-11-09 17:21:09

      雖然sleep了3秒,但NOW()前后2次獲取到時間是一樣的,也就是說NOW()函數獲取的時間是在整個SQL語句開始執行時的時間,無論SQL語句中有多少個NOW()函數,獲取到的時間都是一樣的。

      CURRENT_TIMESTAMP(), LOCALTIME(), LOCALTIMESTAMP()和NOW()函數一樣。

      但SYSDATE不同,它獲取到的是SYSDATE()函數執行時的實時時間:

      SELECT SYSDATE(), SLEEP(3), SYSDATE();

      執行結果:

      SYSDATE()            sleep(3)   SYSDATE()
      2017-11-09 17:25:05  0          2017-11-09 17:25:08

      1.2、 獲取當前本地的日期

      SELECT 
          CURDATE(), 
          CURRENT_DATE();

      1.3、 獲取當前本地的時間

      SELECT 
          CURTIME(), 
          CURRENT_TIME();

      1.4、 獲取當前UTC日期和時間

      SELECT 
          UTC_TIMESTAMP();

      1.5、 獲取當前UTC日期

      SELECT 
          UTC_DATE();

      1.6、 獲取當前UTC時間

      SELECT 
          UTC_TIME();

      1.7、獲取時間戳(自1970年經過的秒)

      SELECT UNIX_TIMESTAMP();  -- 當前時間時間戳
      SELECT UNIX_TIMESTAMP('2017-11-09 12:30:00');  -- 自1970年到2017-11-09 12:30:00經過的秒數

      二、 時間操作


      2.1、 從字符串提取時間和日期

      SET @dt = '2008-09-10 07:15:30.123456';
      SELECT DATE(@dt);        -- 2008-09-10
      SELECT TIME(@dt);        -- 07:15:30.123456
      SELECT YEAR(@dt);        -- 2008
      SELECT QUARTER(@dt);     -- 3
      SELECT MONTH(@dt);       -- 9
      SELECT WEEK(@dt);        -- 36
      SELECT DAY(@dt);         -- 10
      SELECT HOUR(@dt);        -- 7
      SELECT MINUTE(@dt);      -- 15
      SELECT SECOND(@dt);      -- 30
      SELECT MICROSECOND(@dt); -- 123456

      2.2、 獲取某天在一周、一月、一年中所處位置

      SET @dt = '2017-11-09';
      SELECT DAYOFWEEK(@dt);   -- 5       星期日為0,5代表星期四
      SELECT DAYOFMONTH(@dt);  -- 9       一個月的第9天
      SELECT DAYOFYEAR(@dt);   -- 313     2017年的第313天

      2.3、 獲取指定日期的最后一天

      SELECT LAST_DAY('2017-02-05');   -- 2017-02-28

      2.4. 時間加減

      SET @dt = "2017-11-09 17:10:20.0000001";
      SELECT DATE_ADD(@dt, INTERVAL 1 DAY);        -- 加1天
      SELECT DATE_ADD(@dt, INTERVAL 2 HOUR);       -- 加2小時
      SELECT DATE_ADD(@dt, INTERVAL 1 MINUTE);     -- 加1分鐘
      SELECT DATE_ADD(@dt, INTERVAL 1 SECOND);
      SELECT DATE_ADD(@dt, INTERVAL 1 MICROSECOND); -- 加1微妙
      SELECT DATE_ADD(@dt, INTERVAL 1 WEEK);        -- 加1周
      SELECT DATE_ADD(@dt, INTERVAL 1 MONTH);
      SELECT DATE_ADD(@dt, INTERVAL 1 QUARTER);     -- 加1個季度
      SELECT DATE_ADD(@dt, INTERVAL 1 YEAR);
      SELECT DATE_ADD(@dt, INTERVAL -1 DAY);       -- 減1天

      2.5. 兩個日期、時間加減

      SELECT DATEDIFF('2008-08-08', '2008-08-01');  -- 7
      SELECT DATEDIFF('2008-08-01', '2008-08-08');  -- -7  第一個參數減去第二個參數
      SELECT TIMEDIFF('2008-08-08 08:08:08', '2008-08-08 00:00:00');  -- 08:08:08
      SELECT TIMEDIFF('00:00:00', '08:08:08');                        -- -08:08:08

      2.6. 時間格式化

      SELECT DATE_FORMAT('2008-08-08 22:23:00', '%W %M %Y');      -- Friday August 2008
      SELECT DATE_FORMAT('2008-08-08 22:23:01', '%Y%m%d%H%i%s');  -- 20080808222301
      SELECT TIME_FORMAT('22:23:01', '%H.%i.%s');                 -- 22.23.01

      2.7. 秒計算

      計算指定時間折合多少秒,如00:01:00表示1分鐘,等于60秒。
      SELECT TIME_TO_SEC('01:00:05');  -- 3605
      SELECT SEC_TO_TIME(3605);        -- '01:00:05'

      以上就是 mysql日期和時間 的所有內容了,希望可以給同學們帶來新的認識和啟發吧

      相關推薦:

      MySQL查詢時間基礎教程

      MySQL時間日期查詢方法與函數

      mysql時間函數使用 mysql數據庫差異比較的PHP代碼

      以上就是mysql日期和時間的詳細內容,更多請關注php中文網其它相關文章!


      學習教程快速掌握從入門到精通的SQL知識。




      日韩精品一区二区三区高清