MySQL
 Computer >> コンピューター >  >> プログラミング >> MySQL

MySQLで日付を好きな形式に変換して表示する方法|DATE_FORMAT()関数の使い方

MySQLのDATE_FORMAT()関数とは

MySQLで日付をユーザーが指定した別の形式で表示したい場合は、DATE_FORMAT()関数を使用します。この関数は2つの引数を受け取ります。第1引数には対象となる日付を、第2引数には希望する形式を表す書式文字列(フォーマット指定子)を指定します。

使用例

例として、テーブル「date_testing」に以下のような形式(YYYY-MM-DD)で日付が3件保存されている場合を考えてみましょう。

mysql> Select * from date_testing;

+------------+
| Date       |
+------------+
| 2017-03-15 |
| 2017-03-25 |
| 2017-04-05 |
+------------+
3 rows in set (0.00 sec)

次に、DATE_FORMAT()関数を使うことで、これらの日付をユーザーが指定した形式に変換して表示できます。

mysql> Select DATE_FORMAT(Date, '%W %D %M %Y') AS 'FORMATTED DATE' from date_testing;

+---------------------------+
| FORMATTED DATE            |
+---------------------------+
| Wednesday 15th March 2017 |
| Saturday 25th March 2017  |
| Wednesday 5th April 2017  |
+---------------------------+
3 rows in set (0.00 sec)

主な書式指定子の意味

上記の例で使用した「%W」や「%D」などは、日付の書式を指定するための記号(フォーマット指定子)です。代表的なものは以下の通りです。

  • %W:曜日の名前(例:Wednesday)
  • %D:英語の序数付きの日(例:15th)
  • %M:月の名前(例:March)
  • %Y:4桁の年(例:2017)

このように複数の書式指定子を組み合わせることで、「Wednesday 15th March 2017」のような読みやすい日付表示を自由に作成できます。用途に合わせて指定子を変更すれば、和暦風の表示や「2025年1月1日」のような形式にも対応可能です。

  1. MySQLで生年月日から曜日名を表示する方法【DAYNAME()関数の使い方】

    MySQLで生年月日から曜日名を表示する方法MySQLでは、DAYNAME()関数を使用することで、生年月日などのDATE型カラムから曜日名を簡単に取得・表示できます。DAYNAME()関数は、指定された日付に対応する曜日名(Sunday、Monday、Tuesdayなど)を英語の文字列として返します。ここでは、実際にテーブルを作成し、生年月日のデータから曜日名を表示する手順を順番に見ていきましょう。1. テーブルを作成するまず、生年月日を格納するためのテーブルを作成します。mysql> create table DemoTable795 ( DateOfBirth date);Qu

  2. 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文を使って、「日/月/年 時:分:秒」