sql >> Base de Datos >  >> RDS >> Mysql

Almacenamiento de día y mes (sin año)

La mejor manera de almacenar datos de fechas, incluso si el componente del año no es obligatorio, es para usar la fecha. Cuando necesite usarlo, puede eliminar el año o reemplazarlo con el año con el que se compara (o el año actual).

Tenerlo en la columna de fecha facilita la clasificación correcta, integridad, validación etc.

Para atender a los años bisiestos, utilice un año como '0004' que permite '0004-02-29'. Usar el año 4 lo hace un poco más complicado que el año 0, pero como ejemplo, esto convierte la fecha '29 de febrero' (año agnóstico) en una fecha de este año para compararla con algún otro campo

select
    adddate(
    subdate(cast('0004-02-29' as date),
        interval 4 year),
        interval year(curdate()) year)

result: 2011-02-28