Tuesday, January 4, 2022

Access SQL: WHERE-Klausel

Access SQL: WHERE-Klausel

Dies ist einer von mehreren Artikeln über Access SQL. In diesem Artikel wird beschrieben, wie Sie eine WHERE-Klausel schreiben und anhand von Beispielen verschiedene Techniken veranschaulichen, die Sie in einer WHERE-Klausel verwenden können.

In einer SQL-Anweisung gibt die WHERE-Klausel Kriterien an, die Feldwerte für die Datensätze erfüllen müssen, die die Werte enthalten, die in die Abfrageergebnisse aufgenommen werden sollen.

Eine Übersicht über Access SQL finden Sie im Artikel Access SQL: grundlegende Konzepte, Vokabular und Syntax .

In diesem Artikel

Begrenzen Sie die Ergebnisse mithilfe von Kriterien

Wenn Sie Daten verwenden möchten, um die Anzahl der Datensätze zu begrenzen, die in einer Abfrage zurückgegeben werden, können Sie Kriterien verwenden. Ein Abfragekriterium ähnelt einer Formel – es ist eine Zeichenfolge, die aus Feldbezügen, Operatoren und Konstanten bestehen kann. Abfragekriterien sind eine Art von Ausdruck.

Die folgende Tabelle zeigt einige Beispielkriterien und erläutert ihre Funktionsweise.

Kriterien

Beschreibung

>25 und <50

Dieses Kriterium gilt für ein Nummernfeld, z. B. Price oder UnitsInStock. Es enthält nur die Datensätze, bei denen das Feld Price oder UnitsInStock einen Wert größer als 25 und kleiner als 50 enthält.

DateDiff ("yyyy", [Geburtsdatum], Date()) > 30

Dieses Kriterium gilt für ein Datum/Uhrzeit-Feld, z. B. Geburtsdatum. Nur Datensätze, bei denen die Anzahl der Jahre zwischen dem Geburtsdatum einer Person und dem heutigen Datum größer als 30 ist, werden in das Abfrageergebnis aufgenommen.

Ist Null

Dieses Kriterium kann auf jede Art von Feld angewendet werden, um Datensätze anzuzeigen, bei denen der Feldwert null ist.

Wie die vorherige Tabelle zeigt, können Kriterien je nach Datentyp des Felds, für das die Kriterien gelten, und Ihren spezifischen Anforderungen sehr unterschiedlich aussehen. Einige Kriterien sind einfach und verwenden einfache Operatoren und Konstanten. Andere sind komplex und verwenden Funktionen und spezielle Operatoren und enthalten Feldreferenzen.

Wichtig: Wenn ein Feld mit einer Aggregatfunktion verwendet wird, können Sie keine Kriterien für dieses Feld in einer WHERE-Klausel angeben. Stattdessen verwenden Sie eine HAVING-Klausel, um Kriterien für aggregierte Felder anzugeben. Weitere Informationen finden Sie in den Artikeln Access SQL: grundlegende Konzepte, Vokabular und Syntax und HAVING-Klausel .

Syntax der WHERE-Klausel

Sie verwenden Abfragekriterien in der WHERE-Klausel einer SELECT-Anweisung.

Eine WHERE-Klausel hat die folgende grundlegende Syntax:

WHERE-Feld = Kriterium

Angenommen, Sie möchten die Telefonnummer eines Kunden, erinnern sich aber nur daran, dass der Nachname des Kunden Bagel ist. Anstatt alle Telefonnummern in Ihrer Datenbank zu durchsuchen, können Sie eine WHERE-Klausel verwenden, um die Ergebnisse einzuschränken und das Auffinden der gewünschten Telefonnummer zu erleichtern. Angenommen, Nachnamen werden in einem Feld mit dem Namen LastName gespeichert, sieht Ihre WHERE-Klausel wie folgt aus:

WHERE [Nachname]='Bagel'

Hinweis: Sie müssen die Kriterien in Ihrer WHERE-Klausel nicht auf die Äquivalenz von Werten stützen. Sie können andere Vergleichsoperatoren verwenden, z. B. größer als (>) oder kleiner als (<). Beispiel: WO [Preis]>100 .

Verwenden Sie die WHERE-Klausel, um Datenquellen zu kombinieren

Manchmal möchten Sie möglicherweise Datenquellen basierend auf Feldern kombinieren, die übereinstimmende Daten, jedoch unterschiedliche Datentypen aufweisen. Beispielsweise kann ein Feld in einer Tabelle den Datentyp Zahl aufweisen, und Sie möchten dieses Feld mit einem Feld in einer anderen Tabelle mit dem Datentyp Text vergleichen.

Sie können keine Verknüpfung zwischen Feldern mit unterschiedlichen Datentypen erstellen. Um Daten aus zwei Datenquellen basierend auf Werten in Feldern mit unterschiedlichen Datentypen zu kombinieren, erstellen Sie eine WHERE-Klausel, die ein Feld als Kriterium für das andere Feld verwendet, indem Sie das Schlüsselwort LIKE verwenden.

Angenommen, Sie möchten Daten aus Tabelle1 und Tabelle2 verwenden, jedoch nur, wenn die Daten in Feld1 (ein Textfeld in Tabelle1) mit den Daten in Feld2 (ein Zahlenfeld in Tabelle2) übereinstimmen. Ihre WHERE-Klausel würde wie folgt aussehen:

WHERE Feld1 LIKE Feld2

Weitere Informationen zum Erstellen von Kriterien zur Verwendung in einer WHERE-Klausel finden Sie im Artikel Beispiele für Abfragekriterien .

Seitenanfang

No comments:

Post a Comment