PDF (US Ltr)
- 26.8Mb
PDF (A4)
- 26.8Mb
2 桁の年を含む日付の値は、世紀が不明なためあいまいです。MySQL では、年は内部的に 4 桁で格納されるため、そのような値は 4 桁の形式に変換する必要があります。
DATETIME
、DATE
、および TIMESTAMP
型では、MySQL は、次のルールを使用して、あいまいな年の値で指定された日付を変換します。
00-69
の範囲の値は2000-2069
に変換されます。70-99
の範囲の値は1970-1999
に変換されます。
YEAR
ではルールは同じですが、YEAR(4)
に挿入された数値 00
は 2000
ではなく 0000
になります。YEAR(4)
にゼロを指定し、これを 2000
として解釈させるには、文字列 '0'
または '00'
としてこれを指定します。
これらのルールは、データ値が何を表すかを妥当に推測する単なる経験則であることを覚えておいてください。MySQL で使用されるルールで必要な値が生成されない場合、4 桁の年を含む明確な入力値を指定する必要があります。
ORDER BY
は、2 桁の年を持つ YEAR
値を正しくソートします。
MIN()
や MAX()
などの一部の関数は、YEAR
を数値に変換します。つまり、2 桁の年の値は、これらの関数では正しく機能しません。この場合の解決策としては、YEAR
を 4 桁の年の形式に変換します。