2014-08-29 5 views
0

J'utilise mysql, j'ai une colonne dans le tableau appelé DATE_1 qui est varchar (255), la colonne se composent des dateschanger le format de la date à un format différent

qui sont au format '25 Juin, 2014' I voulez-vous les convertir en '25 -06-2014 ', c'est-à-dire en JJ-MM-AAAA

comment faire cela?

+1

En note, stocker des dates comme varchar n'est pas du tout un bon design. –

+0

Je convertis la base de données du serveur sql à mon sql, d'abord je dois le nettoyer puis je le convertis en format de date – mb1987

Répondre

1

Utilisez STR_TO_DATE() et DATE_FORMAT()

SELECT DATE_FORMAT(STR_TO_DATE(date_1, '%M %e,%Y'), '%d-%m-%Y') AS new_date 

Voir DATE_FORMAT() pour tous les spécificateurs qui peuvent être utilisés avec ces fonctions.

FYI, vous devriez stocker les dates comme des dates réelles dans votre base de données car c'est un format natif dans MySQL qui signifie que vous avez alors beaucoup d'outils à votre disposition pour faciliter le travail avec eux. Cela inclut la conversion de tous les formats que vous voulez lors de la récupération, ainsi que le tri et la recherche.

0

La meilleure option est de ne pas les stocker en tant que varchar et de les stocker dans leur format natif comme date ou datetime. Vous disposez alors d'une riche sélection d'opérateurs pour les formater de toutes les manières possibles et prendre en charge les opérations de requête enrichies sur la colonne.

Questions connexes