Mysql 時間函數

-- 獲取當前日期和時間
select now();

-- 獲取當前日期
SELECT CURRENT_DATE();

-- 獲取當前時間
SELECT CURRENT_TIME();

-- 獲取當前日期和時間
SELECT CURRENT_TIMESTAMP();

-- unix日期時間戳
SELECT UNIX_TIMESTAMP(date);

-- 兩個時間相差的時間數(expr1 − expr2) 必須是時間類型,格式要一致
select timediff('18:32:59','18:30:00');
select timediff('2018-01-06 18:32:59','2018-01-01 18:30:00');

-- 返回兩個日期相減(expr1 − expr2 )相差的天數
select datediff('2018-07-30','2017-01-10');

-- 分別爲給定的日期date加上(add)或減去(sub)
SELECT DATE_ADD('2018-07-30',INTERVAL 10 HOUR);
SELECT DATE_SUB('2018-07-30',INTERVAL 10 HOUR);

-- 格式化日期: DATE_FORMAT(date, format)
SELECT DATE_FORMAT(NOW(),'%Y-%m-%d');

DATE_FORMAT函數,format字符串格式化date值:

  • %S, %s 兩位數字形式的秒( 00,01, ..., 59)
  • %I, %i 兩位數字形式的分( 00,01, ..., 59)
  • %H 兩位數字形式的小時,24 小時(00,01, ..., 23)
  • %h 兩位數字形式的小時,12 小時(01,02, ..., 12)
  • %k 數字形式的小時,24 小時(0,1, ..., 23)
  • %l 數字形式的小時,12 小時(1, 2, ..., 12)
  • %T 24 小時的時間形式(hh:mm:ss)
  • %r 12 小時的時間形式(hh:mm:ss AM 或hh:mm:ss PM)
  • %p AM或PM
  • %W 一週中每一天的名稱(Sunday, Monday, ..., Saturday)
  • %a 一週中每一天名稱的縮寫(Sun, Mon, ..., Sat)
  • %d 兩位數字表示月中的天數(00, 01,..., 31)
  • %e 數字形式表示月中的天數(1, 2, ..., 31)
  • %D 英文後綴表示月中的天數(1st, 2nd, 3rd,...)
  • %w 以數字形式表示週中的天數( 0 = Sunday, 1=Monday, ..., 6=Saturday)
  • %j 以三位數字表示年中的天數( 001, 002, ..., 366)
  • %U 周(0, 1, 52),其中Sunday 爲週中的第一天
  • %u 周(0, 1, 52),其中Monday 爲週中的第一天
  • %M 月名(January, February, ..., December)
  • %b 縮寫的月名( January, February,...., December)
  • %m 兩位數字表示的月份(01, 02, ..., 12)
  • %c 數字表示的月份(1, 2, ...., 12)
  • %Y 四位數字表示的年份
  • %y 兩位數字表示的年份
  • %% 直接值“%”
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章