SQL EXISTS



SQL > SQL Befehle > EXISTS 

EXISTS ist ein boolescher Operator, der in einer Unterabfrage verwendet wird, um zu überprüfen, ob die innere Abfrage eine Zeile zurückgibt. Wenn dies der Fall ist, wird die äußere Abfrage ausgeführt. Andernfalls wird die äußere Abfrage nicht ausgeführt, und die gesamte SQL-Anweisung gibt nichts zurück.

Syntax

Die Syntax für EXISTS lautet:

SELECT "Spaltenname1"
FROM "Tabellenname1"
WHERE EXISTS
(SELECT *
FROM "Tabellenname2"
WHERE "Bedingung");

Bitte beachten Sie, dass anstelle von * in der inneren Abfrage eine oder mehrere Spalten ausgewählt werden können. Der Effekt bleibt gleich.

Beispiel

Wir verwenden die folgenden Tabellen für unser Beispiel.

Tabelle Store_Information

Store_Name Sales Txn_Date
Los Angeles 1500 Jan-05-1999
San Diego 250 Jan-07-1999
Los Angeles 300 Jan-08-1999
Boston 700 Jan-08-1999

Tabelle Geography

Region_Name Store_Name
East Boston
East New York
West Los Angeles
West San Diego

Die folgende SQL-Abfrage,

SELECT SUM(Sales) FROM Store_Information
WHERE EXISTS
(SELECT * FROM Geography
WHERE Region_Name = 'West');

liefert das folgende Ergebnis:

SUM(Sales)
2750

Zunächst mag dies verwirrend erscheinen, da die Unterabfrage die Bedingung [region_name = 'West'] enthält, aber die Abfrage den Umsatz für Geschäfte in allen Regionen aufsummiert. Bei genauerer Betrachtung stellt sich heraus, dass die Unterabfrage mehr als null Zeilen zurückgibt, wodurch die EXISTS-Bedingung wahr ist und die aus der Abfrage "SELECT SUM(Sales) FROM Store_Information" zurückgegebenen Zeilen das endgültige Ergebnis werden. 

Diese Seite wurde zuletzt am 16.10.2023 aktualisiert




Copyright © 2026 1keydata.com Alle Rechte vorbehalten



(追記) (追記ここまで)

AltStyle によって変換されたページ (->オリジナル) /