MySQL 8.0 リファレンスマニュアル


11.2.4 YEAR 型

YEAR 型は年の値を表すために使用される 1 バイトの型です。 これは、4 文字の暗黙的な表示幅で YEAR として宣言することも、明示的な表示幅で YEAR(4) と同等に宣言することもできます。

注記

MySQL 8.0.19 では、明示的な表示幅を持つ YEAR(4) データ型は非推奨であり、将来のバージョンの MySQL ではサポートされなくなる予定です。 かわりに、同じ意味を持つ表示幅を指定せずに YEAR を使用してください。

MySQL 8.0 では、古いバージョンの MySQL で許可されている 2 桁の YEAR(2) データ型はサポートされていません。 4 桁の YEAR に変換する手順は、MySQL 5.7 Reference Manual2-Digit YEAR(2) Limitations and Migrating to 4-Digit YEAR を参照してください。

MySQL では、YEAR 値が 1901 から 2155 および 0000 の範囲で YYYY 形式で表示されます。

YEAR は、次のような様々な形式で入力値を受け入れます:

  • '1901'から'2155'の範囲の 4 桁の文字列として。

  • 1901 から 2155 までの範囲の 4 桁の数値として。

  • '0'から'99'までの範囲の 1 桁または 2 桁の文字列として。 MySQL は、'0' から '69''70' から '99' の範囲の値を、2000 から 20691970 から 1999 の範囲の YEAR 値に変換します。

  • 0 から 99 までの範囲の 1 桁または 2 桁の数値として。 MySQL は、1 から 6970 から 99 の範囲の値を、2001 から 20691970 から 1999 の範囲の YEAR 値に変換します。

    数値 0 を挿入した結果の表示値は 0000 で、内部値は 0000 です。 ゼロを挿入して 2000 として解釈するには、文字列'0'または'00'として指定します。

  • NOW() などの YEAR コンテキストで許容される値を返す関数の結果として。

厳密な SQL モードが有効になっていない場合、MySQL は無効な YEAR 値を 0000 に変換します。 厳密な SQL モードでは、無効な YEAR 値を挿入しようとするとエラーが発生します。

セクション11.2.8「日付の 2 桁の年」も参照してください。


関連キーワード:  YEAR, クラス, 範囲, 数値, 空間, リファレンス, 表示, マニュアル, 変換, サポート