Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Tag und Monat speichern (ohne Jahr)

Der beste Weg, Datumsdaten zu speichern, auch wenn die Jahreskomponente ist nicht erforderlich, ist das Datum zu verwenden. Wenn Sie es verwenden müssen, können Sie das Jahr entfernen oder es durch das Jahr ersetzen, mit dem verglichen wird (oder das aktuelle Jahr).

Es in der Datumsspalte zu haben, erleichtert die korrekte Sortierung, Integrität und Validierung usw.

Verwenden Sie für Schaltjahre ein Jahr wie '0004', das '0004-02-29' erlaubt. Die Verwendung des Jahres 4 macht es etwas komplizierter als das Jahr 0, aber als Beispiel verwandelt dies das Datum „29. Februar“ (jahrunabhängig) in ein Datum in diesem Jahr, um es mit einem anderen Feld zu vergleichen

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

result: 2011-02-28