Daten der letzten sieben Tage mit SQL extrahieren
Diese Anleitung zeigt, wie Sie Daten der vergangenen Woche mithilfe einer SQL-Abfrage abrufen und dabei die Woche so definieren, dass sie am Sonntag beginnt. Nehmen wir an, Sie haben eine Tabelle mit einer Spalte „Datum“ und anderen relevanten Daten. Ziel ist es, Einträge aus den letzten sieben Tagen auszuwählen.
Beispieltabelle:
Betrachten Sie eine Tabelle mit den folgenden Beispieldaten:
id | date |
---|---|
2 | 2011-05-14 09:17:25 |
5 | 2011-05-16 09:17:25 |
6 | 2011-05-17 09:17:25 |
8 | 2011-05-20 09:17:25 |
15 | 2011-05-22 09:17:25 |
Das Ziel besteht darin, id
die Werte 5, 6 und 8 zu extrahieren, die Daten aus der Vorwoche darstellen.
SQL-Abfrage:
Die folgende MySQL-Abfrage erreicht dies:
<code class="language-sql">SELECT id FROM tbname WHERE date BETWEEN DATE_SUB(NOW(), INTERVAL 7 DAY) AND NOW();</code>
Erklärung:
Diese Abfrage verwendet den Operator BETWEEN
, um Datensätze zu filtern, bei denen das „Datum“ in einen bestimmten Zeitrahmen fällt. DATE_SUB(NOW(), INTERVAL 7 DAY)
berechnet Datum und Uhrzeit sieben Tage vor dem aktuellen Zeitpunkt (NOW()
). Die BETWEEN
-Klausel wählt dann Einträge zwischen diesem berechneten Datum und dem aktuellen Datum und der aktuellen Uhrzeit aus.
Ergebnis:
Die Abfrage gibt Folgendes zurück:
id |
---|
5 |
6 |
8 |
Diese id
Werte spiegeln genau die Dateneingaben der letzten Woche wider. Beachten Sie, dass diese Abfrage unabhängig vom Wochentag die letzten sieben Tage berücksichtigt. Für eine komplexere Wochendefinition (z. B. Beginn am Sonntag) ist möglicherweise eine ausgefeiltere Datumsmanipulation erforderlich, möglicherweise unter Einbeziehung der Funktion DAYOFWEEK()
oder ähnlichem.
Das obige ist der detaillierte Inhalt vonWie rufe ich mithilfe einer SQL-Abfrage Daten der letzten Woche ab?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!