Databases Reference
In-Depth Information
θ
ANY
prüft, ob die Bedingung für irgendeine Zeile der Unterabfrage zutrifft.
SOME
SOME ist ein anderer Name für ANY.
θ
θ
ALL
prüft, ob die Bedingung für alle Zeilen der Unterabfrage zutrifft.
Tabelle 5.2: Operatoren für Mengenvergleiche (Forts.)
Wir erläutern im Folgenden die einzelnen Operatoren an Beispielen.
IN
Gesucht sind die Bestellungen, in denen der Artikel mit der Nummer »K003« ent-
halten ist. Wir ermitteln in der Unterabfrage die Bestellnummern der Positionen,
bei denen artikel_nr den Wert 'K003' hat. Dieses können mehrere Positionen sein.
SELECT bestell_nr, bestelldatum
FROM bestellung
WHERE bestell_nr IN
(SELECT bestell_nr
FROM position
WHERE artikel_nr = 'K003');
bestell_nr bestelldatum
=========== ============
151 2000-04-28
152 2000-04-30
Zur Erläuterung betrachten wir die Unterabfrage einmal für sich. Sie liefert
mehrere Zeilen:
SELECT bestell_nr
FROM position
WHERE artikel_nr = 'K003';
bestell_nr
===========
151
152
Der IN-Operator ist bereits im Zusammenhang mit einfachen Abfragen an eine
Tabelle vorgestellt worden. 24 Bei der dort vorgestellten Form ist aber vorausge-
setzt, dass die Menge der Vergleichswerte bekannt ist. In diesem Fall hätten wir die
Hauptabfrage dann so formulieren können:
SELECT bestell_nr, bestelldatum
FROM bestellung
WHERE bestell_nr IN (151, 152)
24 Vgl. Kapitel 4.4.3.
Search WWH ::




Custom Search