MySQL 格式化日期時間 DATE_FORMAT()
MySQL 可以使用 DATE_FORMAT() 函數來顯示不同格式的日期時間。
DATE_FORMAT() 語法 (Syntax)
DATE_FORMAT(date, format)
DATE_FORMAT() 會返回一個字串,你可以指定不同的 format 來顯示不同輸出格式的 date。
在 format 中你可以使用的格式有:
| 格式 | 顯示 |
|---|---|
| %a | 縮寫的星期幾 Sun..Sat |
| %b | 縮寫的月份 Jan..Dec |
| %c | 月份 0..12 |
| %D | 一個月的第幾天,英文前綴表示 0th, 1st, 2nd, 3rd, … |
| %d | 一個月的第幾天,數字 00..31 |
| %e | 一個月的第幾天,數字 0..31 |
| %f | 毫秒 000000..999999 |
| %H | 小時 00..23 |
| %h | 小時 01..12 |
| %I | 小時 01..12 |
| %i | 分鐘 00..59 |
| %j | 一年中的第幾天 001..366 |
| %k | 小時 0..23 |
| %l | 小時 1..12 |
| %M | 月份名稱 January..December |
| %m | 月份 00..12 |
| %p | AM 或 PM |
| %r | 十二小時制的時間 hh:mm:ss 後面接 AM 或 PM |
| %S | 秒數 00..59 |
| %s | 秒數 00..59 |
| %T | 二十四小時制的時間 hh:mm:ss |
| %U | 一年中的第幾週,用星期日當作是一週的第一天 00..53 |
| %u | 一年中的第幾週,用星期一當作是一週的第一天 00..53 |
| %V | 一年中的第幾週,用星期日當作是一週的第一天 01..53,與 %X 一起使用 |
| %v | 一年中的第幾週,用星期一當作是一週的第一天 01..53,與 %x 一起使用 |
| %W | 星期幾名稱 Sunday..Saturday |
| %w | 一週的第幾天,0=星期日..6=星期六 |
| %X | 年,四位數整數,用星期日當作是一週的第一天,與 %V 一起使用 |
| %x | 年,四位數整數,用星期一當作是一週的第一天,與 %v 一起使用 |
| %Y | 年,四位數整數 |
| %y | 年,兩位數整數 |
| %% | 跳脫符號,表示百分比 % |
DATE_FORMAT() 用法 (Example)
mysql> SELECT DATE_FORMAT('2009-10-04 22:23:00', '%W %M %Y');
'Sunday October 2009'
mysql> SELECT DATE_FORMAT('2007-10-04 22:23:00', '%H:%i:%s');
'22:23:00'
mysql> SELECT DATE_FORMAT('1900-10-04 22:23:00', '%D %y %a %d %m %b %j');
'4th 00 Thu 04 10 Oct 277'
mysql> SELECT DATE_FORMAT('1997-10-04 22:23:00', '%H %k %I %r %T %S %w');
'22 22 10 10:23:00 PM 22:23:00 00 6'
mysql> SELECT DATE_FORMAT('1999-01-01', '%X %V');
'1998 52'
mysql> SELECT DATE_FORMAT('2006-06-00', '%d');
'00'