WHERE-Klausel

Gibt an, welche Datensätze aus den in der FROM-Klausel aufgeführten Tabellen von einer SELECT-, UPDATE- oder DELETE-Anweisung betroffen sind.

Syntax

SELECT Feldliste
FROM Tabellenausdruck
WHERE Kriterien

Eine SELECT-Anweisung mit einer WHERE-Klausel besteht aus den folgenden Teilen:

Teil

Beschreibung

Feldliste

Die Namen der Felder, die abgerufen werden sollen, sowie Feldnamenaliase, Auswahlprädikate (ALL, DISTINCT, DISTINCTROW oder TOP) oder sonstige SELECT-Anweisungsoptionen.

Tabellenausdruck

Der Name der Tabelle oder Tabellen, aus der/denen Daten abgerufen werden.

Kriterien

Ein Ausdruck, den Datensätze erfüllen müssen, um in die Abfrageergebnisse einbezogen zu werden.


Hinweise

Das Microsoft Access-Datenbankmodul wählt die Datensätze aus, die den in der WHERE-Klausel aufgeführten Kriterien entsprechen. Wenn Sie keine WHERE-Klausel angeben, gibt die Abfrage alle Zeilen aus der Tabelle zurück. Wenn Sie in der Abfrage mehr als eine Tabelle angeben und keine WHERE-Klausel oder JOIN-Klausel verwenden, generiert die Abfrage ein Kartesisches Produkt der Tabellen.

Die WHERE-Klausel ist optional, folgt aber bei Angabe der FROM-Klausel. Sie können beispielsweise alle Mitarbeiter in der Vertriebsabteilung (WHERE Dept = 'Sales') oder alle Kunden zwischen 18 und 30 Jahren (WHERE Age Between 18 And 30) auswählen.

Wenn Sie keine JOIN-Klausel zum Ausführen von SQL JOIN-Operationen für mehrere Tabellen verwenden, wird das resultierende Recordset-Objekt nicht aktualisiert.

Die WHERE-Klausel ist mit der HAVING-Klausel vergleichbar. WHERE bestimmt, welche Datensätze ausgewählt werden. Nachdem Datensätze mit GROUP BY gruppiert wurden, bestimmt HAVING entsprechend, welche Datensätze angezeigt werden.

Verwenden Sie die WHERE-Klausel, um Datensätze zu entfernen, die nicht nach einer GROUP BY-Klausel gruppiert werden sollen.

Verwenden Sie verschiedene Ausdrücke, um zu bestimmen, welche Datensätze die SQL-Anweisung zurückgibt. Die folgende SQL-Anweisung wählt z. B. alle Mitarbeiter aus, deren Gehälter über 21.000 € liegen:

SELECT LastName, Salary FROM Employees WHERE Salary > 21000;

Eine WHERE-Klausel kann bis zu 40 Ausdrücke enthalten, die durch logische Operatoren, wie z. B. AND und OR, miteinander verknüpft sind.

Wenn Sie einen Feldnamen eingeben, der ein Leerzeichen oder Satzzeichen enthält, schließen Sie den Namen in Klammern ([ ]) ein. Eine Tabelle mit Kundeninformationen kann beispielsweise Informationen zu bestimmten Kunden enthalten:

SELECT [Customer’s Favorite Restarant]

Wenn Sie das Argument Kriterien angeben, müssen Datumsliterale das US-Format aufweisen, auch wenn Sie nicht die US-Version des Microsoft Access-Datenbankmoduls verwenden. So gilt z. B. für den 10. Mai 1996 in Großbritannien die Schreibweise 10/5/96 und in den USA die Schreibweise 5/10/96. Schließen Sie die Datumsliterale unbedingt in das Nummernzeichen (#) ein, wie in den folgenden Beispielen gezeigt.

Um in einer Datenbank für Großbritannien nach Datensätzen mit dem Datum 10. Mai 1996 zu suchen, müssen Sie die folgende SQL-Anweisung verwenden:

SELECT * FROM Orders WHERE ShippedDate = #5/10/96#;

Sie können auch die Funktion DATWERT verwenden, die die internationalen Einstellungen von Microsoft Windows® erkennt. Verwenden Sie z. B. den folgenden Code für die USA:

SELECT * FROM Orders WHERE ShippedDate = DateValue('5/10/96');

Und verwenden Sie den folgenden Code für Großbritannien:

SELECT * FROM Orders WHERE ShippedDate = DateValue('10/5/96');

Hinweis: Wenn die in der Kriterienzeichenfolge referenzierte Spalte vom Typ GUID (Globally Unique Identifier) ist, verwendet der Kriterienausdruck eine etwas andere Syntax:

WHERE ReplicaID = {GUID {12345678-90AB-CDEF-1234-567890ABCDEF}}

Schließen Sie die geschachtelten geschweiften Klammern und Trennstriche wie dargestellt ein.



Ihre Office-Fähigkeiten erweitern
Schulung erkunden
Neue Funktionen als Erster erhalten
An Office Insider teilnehmen

War diese Information hilfreich?

Vielen Dank für Ihr Feedback!

Vielen Dank für Ihr Feedback. Es klingt, als ob es hilfreich sein könnte, Sie mit einem unserer Office-Supportmitarbeiter zu verbinden.

×