Maison  >  Article  >  base de données  >  Comment résoudre les résultats de comparaison de dates incorrects à l'aide de DATE_FORMAT dans MySQL ?

Comment résoudre les résultats de comparaison de dates incorrects à l'aide de DATE_FORMAT dans MySQL ?

Patricia Arquette
Patricia Arquetteoriginal
2024-10-24 12:08:29544parcourir

How to Resolve Incorrect Date Comparison Results Using DATE_FORMAT in MySQL?

Comparaison de dates MySQL avec DATE_FORMAT : résolution du problème

Question :

Lors de la comparaison de dates à l'aide de la fonction DATE_FORMAT, un L'utilisateur a rencontré des résultats inattendus, avec des enregistrements antérieurs à la date de comparaison apparaissant dans les résultats. Comment ce problème peut-il être résolu ?

Analyse :

Le problème vient de la comparaison des dates sous forme de chaînes plutôt que de leurs valeurs de date réelles. DATE_FORMAT convertit les dates en chaînes, qui sont ensuite comparées lexicographiquement, conduisant à des résultats incorrects.

Solution :

Pour comparer les dates avec précision, la requête doit comparer directement les valeurs de date, en utilisant la fonction DATE() pour extraire uniquement les informations de date. La requête modifiée suivante accomplit cela :

<code class="sql">select date_format(date(starttime),'%d-%m-%Y') from data
where date(starttime) >= date '2012-11-02';</code>

Dans cette requête :

  • date(starttime) extrait la partie date de la colonne starttime.
  • date ' 2012-11-02' est un exemple de date de comparaison au format standard ISO-8601 (aaaa-mm-jj).

En comparant directement les dates, la requête filtre efficacement les enregistrements où la date est avant le '02/11/2012'.

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!

Déclaration:
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