Documentation Home
MySQL 5.6 リファレンスマニュアル
Download this Manual
PDF (US Ltr) - 27.1Mb
PDF (A4) - 27.2Mb
HTML Download (TGZ) - 7.2Mb
HTML Download (Zip) - 7.2Mb


MySQL 5.6 リファレンスマニュアル  /  ...  /  日付での 2 桁の年

11.3.8 日付での 2 桁の年

2 桁の年を含む日付の値は、世紀が不明なためあいまいです。MySQL では、年は内部的に 4 桁で格納されるため、そのような値は 4 桁の形式に変換する必要があります。

DATETIMEDATE、および TIMESTAMP 型では、MySQL は、次のルールを使用して、あいまいな年の値で指定された日付を変換します。

  • 00-69 の範囲の値は 2000-2069 に変換されます。

  • 70-99 の範囲の値は 1970-1999 に変換されます。

YEAR ではルールは同じですが、YEAR(4) に挿入された数値 002000 ではなく 0000 になります。YEAR(4) にゼロを指定し、これを 2000 として解釈させるには、文字列 '0' または '00' としてこれを指定します。

これらのルールは、データ値が何を表すかを妥当に推測する単なる経験則であることを覚えておいてください。MySQL で使用されるルールで必要な値が生成されない場合、4 桁の年を含む明確な入力値を指定する必要があります。

ORDER BY は、2 桁の年を持つ YEAR 値を正しくソートします。

MIN()MAX() などの一部の関数は、YEAR を数値に変換します。つまり、2 桁の年の値は、これらの関数では正しく機能しません。この場合の解決策としては、YEAR を 4 桁の年の形式に変換します。


User Comments
Sign Up Login You must be logged in to post a comment.