sql >> Databáze >  >> RDS >> Mysql

Jednoduše převeďte 5místné číslo v databázi mysql na datum

Chcete-li přejít z hodnot Excelu, zkuste toto:

select date('1899-12-30') + interval <number> days

Například:

select date('1899-12-30') + interval 40000 days

Vrátí 6. července 2009, stejně jako v Excelu.

Jinými slovy, můžete zadat hodnotu jako celé číslo a poté provést převod v SQL.

Vlastně jsem trochu překvapen, protože datum 0 v Excelu je v podstatě 0 leden 1900, což je 31. prosince 1899. Mám podezření, že je problém s chybějícím přestupným rokem v roce 1900. Excel má hodnotu "60" reprezentováno jako 29.2.1900. To je zábavné, neuvědomil jsem si, že Excel má tuto chybu.

Výše uvedený kód tedy funguje pro všechny hodnoty větší než 61.



  1. Nasazení a správa PostgreSQL 11:Novinka v ClusterControl 1.7.1

  2. MySQL:UPDATE tabulka s COUNT z jiné tabulky?

  3. Jak používat MySql na Macu

  4. SQL dotaz pro započítání do skupiny s konkrétní podmínkou