Maison >base de données >tutoriel mysql >Comment convertir les chaînes de date MySQL (jj/mm/aaaa) au format aaaa-mm-jj ?
Pour convertir les dates stockées sous forme de chaînes au format jj/mm/aaaa dans MySQL, vous pouvez exploitez la fonction STR_TO_DATE() pour analyser la chaîne et la transformer en un type de données datetime. Cette conversion est cruciale pour appliquer ultérieurement des fonctions de manipulation de date comme DATE_FORMAT().
Pour convertir la chaîne de date au format aaaa-mm-jj souhaité, vous pouvez utiliser la formule suivante dans une requête SELECT :
DATE_FORMAT(STR_TO_DATE(t.datestring, '%d/%m/%Y'), '%Y-%m-%d')
Décomposer le formule :
SELECT DATE_FORMAT(STR_TO_DATE('25/03/2023', '%d/%m/%Y'), '%Y-%m-%d') AS formatted_date;
Sortie :
2023-03-25
Si vous ne pouvez pas modifier le type de données de la colonne d'origine, envisagez de créer une vue qui convertit les chaînes de date en valeurs datetime à l'aide de STR_TO_DATE(). Cette approche vous permet d'effectuer des requêtes sur les valeurs converties sans altérer la table sous-jacente.
CREATE VIEW converted_dates AS SELECT t.id, t.datestring, STR_TO_DATE(t.datestring, '%d/%m/%Y') AS converted_date FROM original_table t;
Ensuite, vous pouvez interroger la vue converti_dates pour récupérer directement les valeurs de date converties :
SELECT converted_date FROM converted_dates WHERE id = 1;
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!