Maison >base de données >tutoriel mysql >Pourquoi mes requêtes de plage de dates MySQL ne renvoient-elles aucun résultat ?
Dépannage des problèmes de requête de plage de dates MySQL
Question :
Lorsque vous utilisez l'opérateur BETWEEN pour interroger une plage de dates dans une table MySQL, le résultat de la requête est vide.
<code class="language-sql">SELECT * FROM `objects` WHERE (date_field BETWEEN '2010-09-29 10:15:55' AND '2010-01-30 14:15:55')</code>
Solution :
En y regardant de plus près, la deuxième date de la plage (« 2010-01-30 14:15:55 ») est antérieure à la première date (« 2010-09-29 10:15:55 »). Cela signifie que la requête demande des enregistrements entre des dates postérieures à une autre date.
Pour corriger ce problème, inversez l'ordre des dates dans l'opérateur ENTRE :
<code class="language-sql">SELECT * FROM `objects` WHERE (date_field BETWEEN '2010-01-30 14:15:55' AND '2010-09-29 10:15:55')</code>
Après avoir effectué cette correction, la requête recherchera désormais les enregistrements avec une valeur de colonne date_field dans la plage de dates valide de « 2010-01-30 14:15:55 » et « 2010-09-29 10:15:55. '.
Plus de ressources :
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!