<< >> Up Title Contents Index

Mehrfachbedingungen: AND, OR


Man kann Zeilen finden, die mehrere Bedingungen erfüllen, welche durch AND oder OR verknüpft werden.

Das erste Beispiel zeigt Kunden, die in München wohnen oder ein Guthaben besitzen.

SELECT vorname, nachname, ort, konto
       FROM kunde
       WHERE ort = 'München' OR konto > 0

Das zweite Beispiel zeigt nur die Münchner Kunden, die ein Guthaben besitzen.

SELECT vorname, nachname, ort, konto
       FROM kunde
       WHERE ort = 'München' AND konto > 0

Klammerung bei AND und OR

Wenn AND und OR gemischt verwendet werden, empfiehlt es sich, Klammern zur Verdeutlichung zu setzen.

Beispiel einer WHERE-Bedingung:

     anrede = 'Firma' AND plz > '7' OR konto > 0.0

Sitzen die Klammern in dieser Weise:

     (anrede = 'Firma' AND plz > '7') OR (konto > 0.0)

dann besteht das Ergebnis aus den süddeutschen Firmenkunden mit beliebigem Kontostand und zusätzlich den Kunden mit einem positiven Konto. Das Ergebnis dieser Anfrage ist mit dem Ergebnis der Anfrage ohne Klammern identisch, da AND eine höhere Priorität als OR hat.

Sitzen die Klammern anders:

     (anrede = 'Firma') AND (plz > '7' OR konto > 0.0)

so werden nur Firmenkunden gefunden, die in Süddeutschland wohnen oder ein Guthaben (positives Konto) haben. Kunden, die beide Bedingungen erfüllen - nämlich süddeutsche Firmen mit Guthaben sind -, werden selbstverständlich mit ausgegeben.

Mehrfachklammerung ist möglich. Die Auswertung erfolgt dann von der innersten zur äußersten Klammerung.


<< >> Up Title Contents Index