Cách tốt nhất để lưu trữ dữ liệu ngày tháng, ngay cả khi thành phần năm là không bắt buộc, là ngày sử dụng. Khi cần sử dụng, bạn có thể bỏ năm hoặc thay bằng năm được so sánh với (hoặc năm hiện tại).
Có nó trong cột ngày tạo điều kiện cho việc sắp xếp chính xác, tính toàn vẹn, xác thực vv
Để phục vụ cho các năm nhuận, hãy sử dụng năm như '0004' cho phép '0004-02-29'. Việc sử dụng năm 4 làm cho nó phức tạp hơn một chút so với năm 0, nhưng như một ví dụ, điều này biến ngày '29 -Feb' (năm bất khả tri) thành một ngày trong năm nay để so sánh với một số trường khác
select
adddate(
subdate(cast('0004-02-29' as date),
interval 4 year),
interval year(curdate()) year)
result: 2011-02-28