SQL-Datumsfilterung

Sql Datumsfilterung



Das Filtern der Daten basierend auf dem Datumswert kommt bei der Arbeit mit Datenbanken häufig vor. So können wir beispielsweise Daten aus einem bestimmten Zeitraum abrufen, die Ergebnisse auf der Grundlage eines bestimmten Datums aggregieren, Trendmuster im Zeitverlauf identifizieren und andere zeitbezogene Vorgänge durchführen.

Es ist daher eine wichtige Fähigkeit für jeden Datenbankentwickler. SQL stellt uns verschiedene Tools zur Verfügung, um die Daten innerhalb eines bestimmten Datensatzes zu filtern.







Begleiten Sie uns in diesem Beitrag, während wir die verschiedenen Methoden und Techniken erkunden, die wir zum Filtern der Daten in der Welt von SQL verwenden können.



Voraussetzungen:

Bevor wir uns mit den praktischen Beispielen und Anwendungen befassen, wollen wir aufschlüsseln, was Sie dafür benötigen.



In diesem Beitrag werden wir versuchen, die Methoden einzuhalten, die auf fast alle SQL-Datenbanken anwendbar sind. Zu Demonstrationszwecken verwenden wir jedoch die MySQL-Version 8 mit der Sakila-Beispieldatenbank.





Es steht Ihnen jedoch frei, jeden gewünschten Datensatz herunterzuladen und zu verwenden. Wir werden Sie auf jeden Fall darauf hinweisen, ob eine bereitgestellte Methode in anderen Datenbanken funktioniert, und gegebenenfalls eine Alternative anbieten.

Filtern Sie ein bestimmtes Datum

Bei der grundlegendsten Datumsfilterung müssen wir einen oder mehrere Datensätze für ein bestimmtes Datum abrufen.



In einem solchen Fall können wir die WHERE-Klausel verwenden, gefolgt von der Datumsspalte und dem tatsächlichen Datumswert, den wir abrufen möchten.

Angenommen, wir möchten die Mietdaten vom 24. Mai 2005 herausfinden. Wir können eine Abfrage wie folgt ausführen:

WÄHLEN *
AB Miete
WHERE rental_date = '24.05.2005 23:03:39' ;

In diesem Fall geben wir das Datum, das wir filtern möchten, als Zeitstempelwert an. Dies liegt daran, dass die Spalte „rental_date“ die Werte als Zeitstempel speichert.

Filtern Sie den Datumsbereich

Der zweite übliche Vorgang ist das Filtern der Daten basierend auf einem bestimmten Datumsbereich. Angenommen, wir möchten die Vermietungen abrufen, die zwischen Mai 2005 und Juni 2005 stattgefunden haben.

Wir können die Abfrage wie folgt ausführen:

WÄHLEN
*
AUS
Vermietung
WO
Mietdatum ZWISCHEN '2005-04-01 00:00:00' UND '2005-06-01 00:00:00' ;

In diesem Fall verwenden wir den AND-Operator, um zwei Werte zu verbinden. Die WHERE-Klausel wird verwendet, wenn jeder Wert aus der Spalte „rental_date“ zwischen den beiden Bereichen liegen muss.

Eine Beispielausgabe sieht wie folgt aus:

Filtern Sie die Datumskomponente

In anderen Fällen können wir, anstatt einen Datumsbereich mit den Literalwerten zu verwenden, die spezifischen Datumskomponenten aus dem Wert extrahieren und darauf basierend filtern.

Anstatt beispielsweise die Daten vom 01.04.2005 und 01.06.2005 anzugeben, können wir den Monat Mai extrahieren und alle Daten filtern, die in diesem Monat liegen.

In MySQL können wir eine Funktion wie die MONTH()-Funktion verwenden, um dies zu erreichen, wie im folgenden Beispiel gezeigt:

WÄHLEN
*
AUS
Vermietung
WO
MONAT ( Mietdatum ) = 5 ;

In diesem Fall extrahiert MONTH(rental_date) den Monatsteil aus dem Datum. Dann können wir diesen Wert zum Filtern verwenden, wenn der Wert gleich 5, Mai, ist.

Abschluss

In diesem Tutorial haben wir eine der grundlegendsten und häufigsten Aufgaben in SQL kennengelernt, bei der wir die Daten basierend auf dem Datumswert filtern. Wir haben gelernt, wie man die verschiedenen Komponenten aus einem Datum extrahiert und damit das Datum und mehr filtert.