Maison > base de données > tutoriel mysql > Comment trier correctement les dates au format JJ/MM/AAAA dans MySQL ?

Comment trier correctement les dates au format JJ/MM/AAAA dans MySQL ?

DDD
Libérer: 2024-12-08 11:35:15
original
765 Les gens l'ont consulté

How to Correctly Order Dates in DD/MM/YYYY Format in MySQL?

Comment gérer l'ordre des dates pour un format spécifique dans MySQL ?

Lorsqu'il s'agit d'ordonner des dates dans MySQL, l'approche typique consiste à utilisez le modificateur DESC pour les formats tels que AAAA-MM-JJ. Cependant, une confusion survient lorsqu'il s'agit de différents formats de date, tels que JJ/MM/AAAA.

Dans le cas spécifique de la commande de dates au format JJ/MM/AAAA, la requête fournie ne fonctionne pas comme prévu. La requête tente d'appliquer la fonction DATE_FORMAT directement à l'expression DATE_FORMAT(Date, '%Y%m%d'), ce qui ne correspond pas au résultat souhaité.

Pour résoudre ce problème, vous disposez de deux options principales :

  1. Formatage de la date de sortie uniquement : Si l'objectif est uniquement d'afficher la date au format JJ/MM/AAAA sans altérer la valeur réelle de la date, vous pouvez utiliser la requête suivante :

    SELECT *, DATE_FORMAT(date,'%d/%m/%Y') AS niceDate 
    FROM table 
    ORDER BY date DESC 
    LIMIT 0,14
    Copier après la connexion

    Dans cette requête, la fonction DATE_FORMAT est appliquée à la colonne date avec le '%d/% m/%Y' pendant le processus de récupération des données. Les résultats afficheront les dates dans le format souhaité tout en laissant les valeurs de date sous-jacentes inchangées.

  2. Tri réel par jour, mois et année : Si vous voulez vraiment pour classer les résultats par jour, puis par mois et enfin par année, comme suggéré par JJ/MM/AAAA, vous devrez utiliser une fonction de comparaison personnalisée. Cette fonction extraira les composants individuels de la date et effectuera une comparaison lexicographique. Voici un exemple de requête qui implémente cette approche :

    SELECT * FROM table
    ORDER BY FORMAT_DAYOFMONTH(Date), FORMAT_MONTH(Date), FORMAT_YEAR(Date) DESC
    LIMIT 14
    Copier après la connexion

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal