samenvatting: in deze tutorial leert u hoe u de SQL Server EXISTS operator kunt gebruiken om te testen of er rijen in een subquery bestaan.

SQL Server EXISTS operator overview

de EXISTS operator is een logische operator waarmee u kunt controleren of een subquery een Rij retourneert. DeEXISTS operator geeftTRUE als de subquery een of meer rijen retourneert.,

het volgende toont de syntaxis van de SQL Server EXISTS operator:

Code language: SQL (Structured Query Language) (sql)

in deze syntaxis is de subquery alleen een SELECT statement. Zodra de subquery rijen retourneert, geeft de operatorEXISTSTRUE en stopt de verwerking onmiddellijk.

merk op dat hoewel de subquery een NULL waarde retourneert, de EXISTS operator nog steeds wordt geëvalueerd naar TRUE.,

SQL Server bestaat operator voorbeelden

laten we enkele voorbeelden nemen om te begrijpen hoe EXISTS operator werkt.

A) het gebruik van bestaat met een subquery geeft NULL voorbeeld

zie de volgende customers tabel uit de voorbeelddatabase.,

in Het volgende voorbeeld retourneert alle rijen uit de customers tabel:

In dit voorbeeld, de subquery heeft een resultaatset bevat NULL waardoor de EXISTS operator te evalueren TRUE. Daarom retourneert de hele query alle rijen uit de customers tabel.,

B) er BESTAAT een gecorreleerde subquery voorbeeld

Overweeg het volgende customers en orders tabellen:

in Het volgende voorbeeld vindt alle klanten die hebben meer dan twee bestellingen:

In dit voorbeeld, we hadden een gecorreleerde subquery retourneert klanten die meer dan twee orders.,

als het aantal door de klant geplaatste orders kleiner is dan of gelijk is aan twee, geeft de subquery een lege resultaatset terug die ervoor zorgt dat de operator EXISTS evalueert tot FALSE.

gebaseerd op het resultaat van de EXISTS operator, wordt de klant opgenomen in de resultatenreeks.

C) bestaat vs., IN voorbeeld

De volgende instructie wordt het IN operator om de bestellingen van de klanten uit San Jose:

De volgende instructie wordt het EXISTS operator die geeft hetzelfde resultaat:

BESTAAT vs. JOIN

De EXISTS operator terug TRUE of FALSE terwijl JOIN component retourneert rijen in een andere tabel.,

u gebruikt de operator EXISTS om te testen of een subquery een rij en kortsluiting retourneert zodra dit gebeurt. Aan de andere kant gebruikt u JOIN om het resultaat uit te breiden door het te combineren met de kolommen uit gerelateerde tabellen.

in de praktijk gebruikt u de EXISTS wanneer u alleen het bestaan van rijen uit gerelateerde tabellen hoeft te controleren zonder gegevens ervan te retourneren.

in deze tutorial hebt u geleerd hoe u de SQL Server EXISTS operator kunt gebruiken om te testen of een subquery rijen retourneert.