Vorgehensweise: Angeben mehrerer Suchbedingungen für eine Spalte (Visual Database Tools)
In manchen Fällen kann es sinnvoll sein, mehrere Suchkriterien auf dieselbe Datenspalte anzuwenden. Auf diese Weise können Sie beispielsweise folgende Vorgänge durchführen:
Sie können in der Tabelle employee nach mehreren verschiedenen Namen oder nach Mitarbeitern in verschiedenen Gehaltsgruppen suchen. Diese Art von Suche erfordert die Verwendung einer OR-Bedingung.
Sie können nach einem Buchtitel suchen, der mit dem Wort "Der" beginnt und das Wort "Koch" enthält. Diese Art von Suche erfordert die Verwendung einer AND-Bedingung.
Hinweis |
---|
Die Angaben zu diesem Thema beziehen sich auf Suchbedingungen in WHERE- und HAVING-Klauseln einer Abfrage. Die Beispiele behandeln vorrangig die Erstellung von WHERE-Klauseln, aber die Regeln sind auf beide Arten von Suchbedingungen anwendbar. |
Zum Suchen nach verschiedenen Werten in derselben Datenspalte wird eine OR-Bedingung eingesetzt. Für die Suche nach Werten, die mehrere Bedingungen erfüllen, wird eine AND-Bedingung festgelegt.
Angeben einer OR-Bedingung
Mit einer OR-Bedingung können Sie mehrere verschiedene Werte angeben, nach denen in einer Spalte gesucht werden soll. Diese Möglichkeit erweitert den Bereich der Suche, und es werden unter Umständen mehr Zeilen als bei der Angabe eines einzelnen Werts zurückgegeben.
Tipp |
---|
Wenn Sie nach mehreren Werten in derselben Spalte suchen, können Sie häufig auch den Operator IN verwenden. |
So geben Sie eine OR-Bedingung an
Fügen Sie dem Kriterienbereich die Spalte für die Suche hinzu.
Geben Sie in der Spalte Filter für die soeben hinzugefügte Datenspalte die erste Bedingung an.
Geben Sie in der Spalte Oder für dieselbe Datenspalte die zweite Bedingung an.
Der Abfrage- und Ansicht-Designer erstellt eine WHERE-Klausel mit einer OR-Bedingung, z. B.:
SELECT fname, lname
FROM employees
WHERE (salary < 30000) OR (salary > 100000)
Angeben einer AND-Bedingung
Mit einer AND-Bedingung können Sie angeben, dass die Werte in einer Spalte zwei oder mehr Bedingungen erfüllen müssen, damit die entsprechende Zeile in das Resultset aufgenommen wird. Diese Möglichkeit schränkt den Bereich der Suche ein, sodass normalerweise weniger Zeilen als bei der Suche nach einem einzigen Wert zurückgegeben werden.
Tipp |
---|
Wenn Sie nach einem Wertebereich suchen, können Sie den Operator BETWEEN verwenden, anstatt zwei Bedingungen mit AND zu verknüpfen. |
So geben Sie eine AND-Bedingung an
Fügen Sie dem Kriterienbereich die Spalte für die Suche hinzu.
Geben Sie in der Spalte Filter für die soeben hinzugefügte Datenspalte die erste Bedingung an.
Fügen Sie dem Kriterienbereich noch einmal dieselbe Datenspalte hinzu, und platzieren Sie diese in einer leeren Zeile des Datenblatts.
Geben Sie in der Spalte Filter für die zweite Instanz der Datenspalte die zweite Bedingung an.
Der Abfrage-Designer erstellt eine WHERE-Klausel mit einer AND-Bedingung, z. B.:
SELECT title_id, title
FROM titles
WHERE (title LIKE '%Cook%') AND
(title LIKE '%Recipe%')
Siehe auch