MySQLのDATE_FORMAT()関数で日付形式を自在に変更する方法
MySQLのDATE_FORMAT()関数とは
MySQLでは、DATE_FORMAT()関数を使うことで、日付データを任意の形式に変換して表示できます。日付を「日/月/年」や「年月日」など、用途に応じたフォーマットに整えたい場合に非常に便利な関数です。
基本構文
SELECT DATE_FORMAT(カラム名, '書式指定子') FROM テーブル名;
第1引数に対象のカラム名、第2引数に希望する形式を表す書式指定子を渡します。
実際に試してみよう
1. サンプルテーブルを作成する
まずは、出荷日(ShippingDate)を格納するテーブルを作成します。
mysql> CREATE TABLE DemoTable
(
ShippingDate date
);
Query OK, 0 rows affected (0.48 sec)2. レコードを挿入する
INSERT文を使って、サンプルデータを登録します。
mysql> INSERT INTO DemoTable VALUES('2016-01-21');
Query OK, 1 row affected (0.17 sec)
mysql> INSERT INTO DemoTable VALUES('2018-05-24');
Query OK, 1 row affected (0.18 sec)
mysql> INSERT INTO DemoTable VALUES('2019-12-31');
Query OK, 1 row affected (0.18 sec)3. 登録したデータを確認する
SELECT文ですべてのレコードを表示してみましょう。
mysql> SELECT * FROM DemoTable;
実行結果は以下のとおりです。
+--------------+ | ShippingDate | +--------------+ | 2016-01-21 | | 2018-05-24 | | 2019-12-31 | +--------------+ 3 rows in set (0.00 sec)
DATE_FORMAT()で日付形式を変更する
それでは、DATE_FORMAT()関数を使って、日付を「日/月/年(%d/%m/%Y)」の形式に変換してみます。
mysql> SELECT DATE_FORMAT(ShippingDate,'%d/%m/%Y') FROM DemoTable;
実行結果:
+--------------------------------------+ | DATE_FORMAT(ShippingDate,'%d/%m/%Y') | +--------------------------------------+ | 21/01/2016 | | 24/05/2018 | | 31/12/2019 | +--------------------------------------+ 3 rows in set (0.00 sec)
このように、元の「YYYY-MM-DD」形式の日付が、指定した「DD/MM/YYYY」形式に変換されて表示されました。
主な書式指定子の一覧
DATE_FORMAT()で使える代表的な書式指定子は以下のとおりです。これらを組み合わせることで、さまざまな表示形式を実現できます。
- %Y:4桁の年(例:2024)
- %y:2桁の年(例:24)
- %m:2桁の月(01〜12)
- %c:月(先頭ゼロなし)
- %d:2桁の日(01〜31)
- %e:日(先頭ゼロなし)
- %H:時(00〜23)
- %i:分(00〜59)
- %s:秒(00〜59)
まとめ
DATE_FORMAT()関数を使えば、MySQLに保存された日付データを自由な形式で表示できます。書式指定子を組み合わせれば「2024年01月15日」のような日本語表記にも対応できるため、Webアプリケーションやレポート出力など、さまざまな場面で活用できます。
-
MySQLで日付形式を変換する方法|STR_TO_DATE()関数の使い方を解説
MySQLでは、VARCHAR型などで保存された文字列の日付データを、正しい日付・時刻形式に変換したいケースがよくあります。そんなときに活躍するのが STR_TO_DATE() 関数です。この記事では、実際のSQL例とともに具体的な使い方を解説します。サンプルテーブルの作成まず、日付を文字列として格納するテーブルを作成します。mysql> create table DemoTable2010 ( DueDate varchar(20) ); Query OK, 0 rows affected (0.68 sec)テストデータの挿入INSERT文を使って、「日/月/年 時:分:秒」
-
Excel差し込み印刷で日付の表示形式を変更する方法【初心者向けステップ解説】
差し込み印刷(Mail Merge)は、Microsoft Wordが持つ非常に便利な機能の一つです。この機能とExcelのデータシートを組み合わせれば、宛先ごとに内容が変わる文書を何通でも自動生成できます。本記事では、Excel差し込み印刷において日付の表示形式を変更する手順を、ステップごとにわかりやすく解説します。練習用ワークブックも用意しているので、実際に操作しながら読み進めてください。Excel差し込み印刷で日付形式を変更する手順ここでは、Excelの差し込み印刷で日付形式を変更する具体的な流れを紹介します。例として、「昇進通知書」を従業員へ一括送付するケースを想定して説明します。ステ