Access SQL: WHERE-Klausel

Dieser Artikel ist Teil einer Artikelreihe über Access SQL. In diesem Artikel wird beschrieben, wie Sie eine WHERE-Klausel schreiben. Außerdem werden anhand von Beispielen verschiedene Techniken veranschaulicht, die Sie beim Schreiben von WHERE-Klauseln anwenden können.

In einer SQL-Anweisung gibt die WHERE-Klausel Kriterien an, die Feldwerte erfüllen müssen, damit die Datensätze mit den entsprechenden Werten in die Abfrageergebnisse einbezogen werden.

Eine Übersicht über Access SQL finden Sie im Artikel Access SQL: Grundkonzepte, Sprache und Syntax.

Inhalt dieses Artikels

Einschränken von Ergebnissen mithilfe von Kriterien

Die Syntax der WHERE-Klausel

Verwenden der WHERE-Klausel zum Kombinieren von Datenquellen

Einschränken von Ergebnissen mithilfe von Kriterien

Wenn Sie die Anzahl der in einer Abfrage zurückgegebenen Datensätze mithilfe von Daten einschränken möchten, können Sie Kriterien verwenden. Ein Abfragekriterium ist mit einer Formel vergleichbar. Es handelt sich dabei um eine Zeichenfolge, die aus Feldverweisen, Operatoren und Konstanten bestehen kann. Abfragekriterien sind eine Art von Ausdruck.

Die folgende Tabelle enthält Beispielkriterien und Erläuterungen der jeweiligen Funktionsweise.

Kriterien

Beschreibung

>25 und <50

Dieses Kriterium gilt für ein Feld vom Typ "Zahl", wie z. B. "Preis" oder "Lagerbestand". Es schließt nur jene Datensätze ein, bei denen das Feld "Preis" oder "Lagerbestand" einen Wert größer als 25 und kleiner als 50 enthält.

DatDiff ("jjjj"; [Geburtsdatum]; Datum()) > 30

Dieses Kriterium gilt für ein Feld vom Typ "Datum/Uhrzeit", wie z. B. "Geburtsdatum". Das Abfrageergebnis enthält nur Datensätze, bei denen die Anzahl von Jahren zwischen dem Geburtsdatum einer Person und dem aktuellen Datum größer als 30 ist.

Ist Null

Dieses Kriterium kann auf alle Feldtypen angewendet werden, um Datensätze mit dem Feldwert "Null" anzuzeigen.

Wie aus der vorherigen Tabelle hervorgeht, können Kriterien abhängig von dem Datentyp des Felds, für das die Kriterien gelten, und Ihren speziellen Anforderungen sehr unterschiedlich sein. Einige Kriterien sind einfach und verwenden einfache Operatoren und Konstanten. Andere Kriterien sind komplex und verwenden Funktionen und spezielle Operatoren und enthalten Feldverweise.

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

Die Syntax der WHERE-Klausel

Sie geben Abfragekriterien in der WHERE-Klausel einer SELECT-Anweisung an.

Eine WHERE-Klausel weist die folgende Basissyntax auf:

WHERE field = criterion

Angenommen, Sie suchen die Telefonnummer eines Kunden, erinnern sich aber nur noch daran, dass der Nachname des Kunden Bagel lautet. Statt alle Telefonnummern in Ihrer Datenbank durchzugehen, könnten Sie eine WHERE-Klausel verwenden, um die Ergebnisse einzuschränken und die gewünschte Telefonnummer einfacher zu finden. Wenn wir davon ausgehen, dass Nachnamen in dem Feld "Nachname" gespeichert sind, sieht die WHERE-Klausel wie folgt aus:

WHERE [LastName]='Bagel'

Hinweis : Die Kriterien in einer WHERE-Klausel müssen nicht auf der Äquivalenz von Werten basieren. Sie können auch andere Vergleichsoperatoren wie "Größer als" (>) oder "Kleiner als" (<) verwenden. Beispiel: WHERE [Preis]>100.

Verwenden der WHERE-Klausel zum Kombinieren von Datenquellen

Es kann vorkommen, dass Sie Datenquellen auf der Basis von Feldern kombinieren möchten, die übereinstimmende Daten enthalten, jedoch unterschiedliche Datentypen aufweisen. Beispielsweise weist ein Feld in einer Tabelle den Datentyp "Zahl" auf, und Sie möchten dieses Feld mit einem Feld in einer anderen Tabelle vergleichen, das mit dem Datentyp "Text" formatiert ist.

Eine Verknüpfung von Feldern mit unterschiedlichen Datentypen ist nicht möglich. Zum Kombinieren von Daten aus zwei Datenquellen basierend auf Werten in Feldern, die unterschiedliche Datentypen aufweisen, müssen Sie eine WHERE-Klausel erstellen, die ein Feld als Kriterium für das andere Feld verwendet, indem das Schlüsselwort LIKE verwendet wird.

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

WHERE field1 LIKE field2

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

Seitenanfang

Teilen Facebook Facebook Twitter Twitter E-Mail E-Mail

War diese Information hilfreich?

Sehr gut. Noch anderes Feedback?

Was können wir verbessern?

Vielen Dank für Ihr Feedback!

×