Access SQL: WHERE-Klausel

Dieser Artikel gehört zu einer Artikelreihe zu Access SQL. In dem Artikel wird beschrieben, wie Sie eine WHERE-Klausel schreiben. Außerdem werden anhand von Beispielen verschiedene Techniken veranschaulicht, die Sie in einer WHERE-Klausel anwenden können.

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

Eine Übersicht zu Access SQL finden Sie im Artikel Access SQL: Grundkonzepte, Sprache und Syntax. Weitere Informationen zu anderen Komponenten von Access SQL finden Sie im Abschnitt Siehe auch.

Inhalt dieses Artikels

Begrenzen von Ergebnissen mithilfe von Kriterien

WHERE-Klauselsyntax

Kombinieren von Datenquellen mithilfe einer WHERE-Klausel

Begrenzen von Ergebnissen mithilfe von Kriterien

Wenn Sie die Anzahl der Datensätze, die von einer Abfrage zurückgegeben werden, mithilfe von Daten begrenzen möchten, können Sie mit Kriterien arbeiten. Ein Abfragekriterium ähnelt einer Formel. Es handelt sich um eine Zeichenfolge, die aus Feldverweisen, Operator und Konstante bestehen kann. Abfragekriterien gehören zu den Ausdruck.

In der folgenden Tabelle werden einige Beispielkriterien und ihre Funktionsweise vorgestellt.

Kriterien

Beschreibung

>25 und <50

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

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

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

Ist Null

Dieses Kriterium kann für alle Arten von Feldern gelten, um Datensätze mit dem Feldwert Null anzuzeigen.

Wie die vorherige Tabelle veranschaulicht, können Kriterien abhängig vom Datentyp des Felds, für das die Kriterien gelten, und Ihre spezifischen Anforderungen sehr unterschiedlich aussehen. Einige Kriterien sind einfach und basieren auf einfachen Operatoren und Konstanten. Andere sind komplex, arbeiten mit Funktionen und speziellen Operatoren und umfassen Verweise auf andere Felder.

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

Seitenanfang

WHERE-Klauselsyntax

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

Eine WHERE-Klausel hat folgende Basissyntax:

WHERE Feld = Kriterium

Angenommen, Sie suchen die Telefonnummer eines Kunden, erinnern sich aber nur noch daran, dass sein Nachname Casselman lautet. Anstatt alle Telefonnummern in Ihrer Datenbank zu durchsuchen, können Sie eine WHERE-Klausel angeben, um die Ergebnisse zu begrenzen und die gewünschte Telefonnummer schneller zu finden. Sofern Nachnamen in einem Feld mit dem Namen "Nachname" gespeichert sind, sieht die WHERE-Klausel wie folgt aus:

WHERE [Nachname]='Casselman'

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, z. B. WHERE [Preis]>100.

Seitenanfang

Kombinieren von Datenquellen mithilfe einer WHERE-Klausel

Es kann vorkommen, dass Sie Datenquellen auf Basis von Feldern vergleichen möchten, die übereinstimmende Daten enthalten, jedoch abweichende Datentypen aufweisen. So kann beispielsweise ein Feld in einer Tabelle beispielsweise den Datentyp "Zahl" haben, 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 auf Basis von Werten in Feldern mit unterschiedlichen Datentypen 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 sollte etwa so aussehen:

WHERE Feld1 LIKE Feld2

Weitere Informationen zu den Kriterien, die Sie in einer WHERE-Klausel angegeben können, 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!

×