Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> MySQL

Sự khác biệt giữa YEAR(2) và YEAR(4) trong MySQL

YEAR(2): Lưu năm 2 chữ số. Ví dụ: 69 → 1969. Phạm vi: 1970-2069 (hiển thị 70-69).

YEAR(4): Lưu năm 4 chữ số. Ví dụ: 1969. Phạm vi: 1901-2155.

Quy tắc chuyển đổi 2 chữ số của MySQL

  • 00-69 → 2000-2069
  • 70-99 → 1970-1999

Khuyến cáo: Không nên lưu năm 2 chữ số vì gây mơ hồ thế kỷ.

Ví dụ minh họa

mysql> CREATE TABLE year_test(val YEAR(2));
mysql> INSERT INTO year_test VALUES('70'),('00');
mysql> SELECT * FROM year_test;
+------+
| val  |
+------+
| 70   |
| 00   |
+------+

mysql> SELECT * FROM year_test WHERE val = '1970';  -- trả về 70
mysql> SELECT * FROM year_test WHERE val = '2000';  -- trả về 00
mysql> SELECT * FROM year_test WHERE val = '1900';  -- Empty set

Giá trị '00' được MySQL hiểu là 2000, không phải 1900.