この記事には、DATE_FORMAT()
の例が含まれています MySQLで機能します。
DATE_FORMAT()
関数を使用すると、指定した形式で日付を返すことができます。たとえば、これを使用して 2020-06-18を返すことができます。 2020年6月木曜日 、またはその他の必要な形式。
構文
構文は次のようになります:
DATE_FORMAT(date,format)
date
はフォーマットする日付であり、format
フォーマット方法を指定します。
有効なフォーマット指定子のリストについては、この記事の下部にある表を参照してください。フォーマット値はパーセント記号(%
)で始まる必要があります 。
例
実例を示します。
SELECT DATE_FORMAT('2020-06-18', '%W, %M %Y') AS 'Result';
結果:
+---------------------+ | Result | +---------------------+ | Thursday, June 2020 | +---------------------+
短い/省略された日と月の名前
結果を短い日と月の名前にフォーマットする例を次に示します。
SELECT DATE_FORMAT('2020-06-18', '%a, %b %Y') AS 'Result';
結果:
+---------------+ | Result | +---------------+ | Thu, Jun 2020 | +---------------+
データベースの例
これは、日時値として格納されているデータベース列から返された値をフォーマットする例です。
USE sakila; SELECT payment_date AS 'Date/Time', DATE_FORMAT(payment_date, '%W, %M %Y') AS 'Date' FROM payment WHERE payment_id = 1;
結果:
+---------------------+---------------------+ | Date/Time | Date | +---------------------+---------------------+ | 2005-05-25 11:30:37 | Wednesday, May 2005 | +---------------------+---------------------+
時間のフォーマット
DATE_FORMAT()
を使用することもできます datetimeの時間コンポーネントをフォーマットします 価値。例:
USE sakila; SELECT payment_date AS 'Date/Time', DATE_FORMAT(payment_date, '%h:%i:%s') AS 'Time' FROM payment WHERE payment_id = 1;
結果:
+---------------------+----------+ | Date/Time | Time | +---------------------+----------+ | 2005-05-25 11:30:37 | 11:30:37 | +---------------------+----------+
AM / PMを追加する別の例を次に示します。 指定者:
USE sakila; SELECT payment_date AS 'Date/Time', DATE_FORMAT(payment_date, '%h:%i %p') AS 'Time' FROM payment WHERE payment_id = 1;
結果:
+---------------------+----------+ | Date/Time | Time | +---------------------+----------+ | 2005-05-25 11:30:37 | 11:30 AM | +---------------------+----------+
使用可能な指定子
次の指定子を使用して、戻り形式を指定できます。フォーマット値はパーセント記号(%
)で始まる必要があります 。
指定子 | 説明 |
---|---|
%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 | 時間、12時間(hh:mm:ss 続いてAM またはPM ) |
%S | 秒(00 .. 59 ) |
%s | 秒(00 .. 59 ) |
%T | 時間、24時間(hh:mm:ss ) |
%U | 週(00 .. 53 )、ここで日曜日は週の最初の日です。 WEEK() モード0 |
%u | 週(00 .. 53 )、ここで月曜日は週の最初の日です。 WEEK() モード1 |
%V | 週(01 .. 53 )、ここで日曜日は週の最初の日です。 WEEK() モード2; %X で使用 |
%v | 週(01 .. 53 )、ここで月曜日は週の最初の日です。 WEEK() モード3; %x で使用 |
%W | 平日の名前(Sunday ..Saturday ) |
%w | 曜日(0 =日曜日..6 =土曜日) |
%X | 日曜日が週の最初の日である週の年、数値、4桁。 %V で使用 |
%x | 週の年。月曜日は週の最初の日で、数値は4桁です。 %v で使用 |
%Y | 年、数値、4桁 |
%y | 年、数値(2桁) |
%% | リテラル% キャラクター |
% | x 、任意の「x 」は上記にリストされていません |