MySQL @Wiki 実用リファレンス
DATE_FORMAT
最終更新:
Bot(ページ名リンク)
-
view
DATE_FORMAT
DATE_FORMAT(date,format)
format 文字列に合わせて、date 値を形式設定する。format 文字列では、次の指定子を使用できる。
| 指定子 | 説明 |
| %M | 月の名前(January..December)。 |
| %W | 曜日名(Sunday..Saturday)。 |
| %D | 英語のサフィックス付きの日付(0th、1st、2nd、3rd など)。 |
| %Y | 4 桁の数値で表した年。 |
| %y | 2 桁の数値で表した年。 |
| %X | 日曜日を週の最初の日とした場合の週に使用する、4 桁の数値で表した年。%V と組み合わせて使用。 |
| %x | 月曜日を週の最初の日とした場合の週に使用する、4 桁の数値で表した年。%v と組み合わせて使用。 |
| %a | 略式の曜日名(Sun..Sat)。 |
| %d | 数値で表した日付(00..31)。 |
| %e | 数値で表した日付(0..31)。 |
| %m | 数値で表した月(00..12)。 |
| %c | 数値で表した月(0..12)。 |
| %b | 略式の月名(Jan..Dec)。 |
| %j | 年間を通した日にち(001..366)。 |
| %H | 時(00..23)。 |
| %k | 時(0..23)。 |
| %h | 時(01..12)。 |
| %I | 時(01..12)。 |
| %l | 時(1..12)。 |
| %i | 数値で表した分(00..59)。 |
| %r | 12 時間形式の時刻(hh:mm:ss に続けて AM または PM)。 |
| %T | 24 時間形式の時刻(hh:mm:ss)。 |
| %S | 秒(00..59)。 |
| %s | 秒(00..59)。 |
| %f | マイクロ秒(000000..999999)。 |
| %p | AM または PM |
| %w | 曜日(0=Sunday..6=Saturday)。 |
| %U | 日曜日を週の最初の日とした場合の週(00..53)。 |
| %u | 月曜日を週の最初の日とした場合の週(00..53)。 |
| %V | 日曜日を週の最初の日とした場合の週(01..53)。%X と組み合わせて使用。 |
| %v | 月曜日を週の最初の日とした場合の週(01..53)。%x と組み合わせて使用。 |
| %% | リテラルの ‘%’。 |
その他の文字はいずれも、解釈されずにそのまま結果にコピーされる。
%f 形式指定子は MySQL 4.1.1 以降で使用できる。
MySQL バージョン 3.23 以降では、形式指定子文字の前に ‘%’ 文字を挿入する必要がある。それより前のバージョンの MySQL では、‘%’ の使用は任意。
月と日の指定子の範囲がゼロから始まっている理由は、MySQL 3.23 以降では、'2004-00-00' のような不完全な日付の格納が許容されるため。
%f 形式指定子は MySQL 4.1.1 以降で使用できる。
MySQL バージョン 3.23 以降では、形式指定子文字の前に ‘%’ 文字を挿入する必要がある。それより前のバージョンの MySQL では、‘%’ の使用は任意。
月と日の指定子の範囲がゼロから始まっている理由は、MySQL 3.23 以降では、'2004-00-00' のような不完全な日付の格納が許容されるため。
mysql> [[SELECT]] DATE_FORMAT('1997-10-04 22:23:00', '%W %M %Y');
-> 'Saturday October 1997'
mysql> SELECT DATE_FORMAT('1997-10-04 22:23:00', '%H:%i:%s');
-> '22:23:00'
mysql> SELECT DATE_FORMAT('1997-10-04 22:23:00',
'%D %y %a %d %m %b %j');
-> '4th 97 Sat 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'