Heim >Datenbank >MySQL-Tutorial >Warum liefert meine MySQL-Datumsbereichsabfrage unerwartete Ergebnisse?

Warum liefert meine MySQL-Datumsbereichsabfrage unerwartete Ergebnisse?

DDD
DDDOriginal
2025-01-21 18:13:07277Durchsuche

Why is my MySQL date range query returning unexpected results?

Fehlerbehebung bei MySQL-Datumsbereichsabfragen

Stoßen Sie bei der Abfrage eines Datumsbereichs mit MySQL auf unerwartete Ergebnisse? Lassen Sie uns gemeinsam das Problem analysieren und eine Lösung finden.

Datumsbereiche verstehen

Der

-Operator von BETWEENMySQL erfordert, dass das Startdatum vor dem Enddatum liegt. Aber in Ihrer ersten Abfrage erscheint das zweite Datum („2010-01-30 14:15:55“) vor dem ersten Datum („2010-09-29 10:15:55“). Dies führt zu einem ungültigen Datumsbereich, der alle Daten ausschließt.

Korrekturabfrage

Um dies zu beheben, kehren Sie einfach die Datumsreihenfolge in der Abfrage um:

<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>

Mit dieser geänderten Abfrage interpretiert MySQL den Datumsbereich korrekt und ruft passende Daten ab.

Weitere Ressourcen

Weitere Informationen finden Sie in der offiziellen MySQL-Dokumentation zur Datums- und Zeitverarbeitung: https://www.php.cn/link/4c74dcfeac90df69aed5c8a90125e696

Das obige ist der detaillierte Inhalt vonWarum liefert meine MySQL-Datumsbereichsabfrage unerwartete Ergebnisse?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn