sql >> データベース >  >> RDS >> Mysql

MySQLの日付形式のチートシート

    MySQLの日付形式は非常に便利な機能です。引数で指定されたとおりに日付をフォーマットします。以下に示すフォーマット指定子のリストを使用して、日付をフォーマットできます。フォーマット指定文字の前に「%」が必要です。これがMySQLの日付フォーマット関数のチートシートです。

    MySQLの日付形式の構文

    DATE_FORMAT(日付、形式)
    日付 –「YYYY-MM-DDHH:MM:SS」形式の日付文字列。これは、テーブルの日付列、上記の文字列、またはNOW()

    のようなシステム関数にすることができます。

    フォーマット –「%x」形式の文字列。 xはフォーマット文字列のアルファベットです。

    MySQL日付形式のチートシート–

    フォーマット文字列 説明
    %a 平日の略称(Sun..Sat)
    %b 省略された月の名前(1月。12月)
    %ac 月、数値(0..12)
    %D 英語のサフィックスが付いた月の日(0日、1日、2日、3日、…)
    %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 月の名前(1月..12月)
    %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)、ここで日曜日は週の最初の日です
    %u 週(00..53)、月曜日が週の最初の日です
    %V 週(01..53)、ここで日曜日は週の最初の日です。 %Xで使用
    %v 週(01..53)、月曜日は週の最初の日です。 %xで使用
    %W 平日の名前(日曜日..土曜日)
    %w 曜日(0=日曜日..6=土曜日)
    %X 日曜日が週の最初の日である週の年、数値、4桁。 %Vで使用
    %x 週の年。月曜日は週の最初の日で、数値は4桁です。 %vで使用
    %Y 年、数値、4桁
    %y 年、数値(2桁)
    %% リテラルの「%」文字

    例:

    #using system function now()
    SELECT DATE_FORMAT(NOW(),'%b %d %Y %h:%i %p');
    
    #using a string
    SELECT DATE_FORMAT('2011-11-05 11:45:00','%b %d %Y %h:%i %p');
    
    #using a date column
    CREATE TABLE TEST(DT DATETIME);
    INSERT INTO TEST(DT) VALUES('2010-10-05 10:45:00');
    SELECT DATE_FORMAT(DT,'%b %d %Y %h:%i %p') from TEST;

    結果:

    Dec 04 2013 10:40 PM
    Nov 05 2013 11:45 PM
    Oct 05 2010 10:45 PM

    ご覧のとおり、フォーマット文字列ではスペース、コンマ、またはハイフンを使用できます。 MySQLの日付フォーマット関数はそれらを結果に保持します。文字列の残りの部分は適切な形式に置き換えられます。使用できる一般的に使用される日付形式を次に示します。

    #using system function now()
    SELECT DATE_FORMAT(NOW(),'%M %d, %Y');
    SELECT DATE_FORMAT(NOW(),'%b %d, %Y');
    SELECT DATE_FORMAT(NOW(),'%c-%d-%Y');
    SELECT DATE_FORMAT(NOW(),'%c-%d-%y');
    SELECT DATE_FORMAT(NOW(),'%d/%c/%Y');
    SELECT DATE_FORMAT(NOW(),'%d/%c/%y');
    SELECT DATE_FORMAT(NOW(),'%b %d, %Y %h:%i %p');
    SELECT DATE_FORMAT(NOW(),'%M %d, %Y %h:%i %p');

    彼らの結果

    1. mySQL-3つのテーブルのデータと列を使用して新しいテーブルを作成する

    2. MariaDBの日付から曜日名を取得する3つの方法

    3. 選択方法*ただし、列名は各ビューで一意である必要があります

    4. v4.0.0以降、方言を明示的に指定する必要があります