Mysql
 sql >> Base de données >  >> RDS >> Mysql

Convertir une chaîne avec un format différent à ce jour

Il existe une astuce pour détecter une date valide sur le page de manuel . Vous pouvez l'utiliser pour déterminer si un STR_TO_DATE format a fonctionné.

select foo,
    case when length(date(str_to_date(foo,"%Y-%m-%d %H:%i:%S"))) is not null then str_to_date(foo,"%Y-%m-%d %H:%i:%S")
        when length(date(str_to_date(foo,"%b %d %Y %h:%i%p"))) is not null then str_to_date(foo,"%b %d %Y %h:%i%p")
    end as newdate
from my_table

Mettez un format pour tous ceux que vous attendez. Testez comme un fou.

Bonne chance.

(Oh, et félicitations pour avoir essayé de nettoyer un mauvais schéma !)