優待や割引でお得に法人向けサービスを発注するなら ➡SBIバリュープレイスの詳細はこちら

SQLでDATE_FORMAT()関数を使って日付データを簡単にフォーマット変更する方法

SQLにおいて日付データの取り扱いは非常に重要です。特に、日付データを特定の形式で出力したいという要求はよくあります。MySQL、MariaDB、など多くのRDBMSで利用可能な`DATE_FORMAT()`関数を使用すれば、日付データのフォーマット変更が非常に簡単に行えます。この記事では、`DATE_FORMAT()`関数の基本的な使い方から、応用例までを解説します。

目次

DATE_FORMAT()関数の基本構文

`DATE_FORMAT()`関数の基本的な構文は以下のようになります。

SELECT DATE_FORMAT(日付, 'フォーマット');

フォーマットオプション

この関数では、第二引数に指定したフォーマットに基づいて日付データが変換されます。以下によく使われるフォーマットオプションをいくつか紹介します。

オプション説明
%Y4桁の年
%y2桁の年
%m
%d
%H時間(24時制)
%i
%s
主なフォーマットオプション

基本的な使用例

年月日を出力する

SELECT DATE_FORMAT(NOW(), '%Y年%m月%d日');

この例では、現在の日付を「YYYY年MM月DD日」の形式で出力します。

時分秒も含めて出力する

SELECT DATE_FORMAT(NOW(), '%Y年%m月%d日 %H:%i:%s');

この例では、現在の日付および時間を「YYYY年MM月DD日 HH:MM:SS」の形式で出力します。

応用例:テーブルデータの日付を変更

テーブルに保存された日付データを`DATE_FORMAT()`関数で変更する場合もあります。

仮想テーブル作成

CREATE TABLE test_date (
  id INT,
  date_column DATE
);
INSERT INTO test_date (id, date_column) VALUES (1, '2023-10-20');

日付データの変更

SELECT id, DATE_FORMAT(date_column, '%Y年%m月%d日') AS formatted_date FROM test_date;

このSQLクエリでは、`test_date`テーブルの`date_column`をフォーマットしています。

まとめ

`DATE_FORMAT()`関数は、SQLで日付データのフォーマットを柔軟に変更できる非常に便利な関数です。基本的な使用方法から応用例までをこの記事で解説しましたが、実際に手を動かして試してみるとより理解が深まるでしょう。

コメント

コメントする

目次