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

Commande MySql par (varchar) date en Mmm-jj-aaaa

Vous voulez le STR_TO_DATE() pour convertir votre colonne varchar existante en une valeur de date.

Je recommanderais certainement de créer une nouvelle colonne et d'utiliser STR_TO_DATE() pour copier la valeur de votre colonne existante dans la nouvelle colonne, plutôt que d'utiliser STR_TO_DATE() directement dans le ORDER BY de votre SELECT .

UPDATE archive SET newdate = STR_TO_DATE(crapdate,'%b-%e-%Y');

Si vous ne pouvez pas modifier la structure du tableau, vous pouvez trier la colonne existante comme ceci :

SELECT * FROM archive ORDER BY STR_TO_DATE(crapdate,'%b-%e-%Y') DESC;