Oppsummering: i denne opplæringen vil du lære hvordan du bruker SQL Server EXISTS operatøren i stand til å teste for eksistensen av rader i en subquery.

SQL-Serveren FINNES operatør oversikt

EXISTS operatør er en logisk operator som lar deg sjekke om et subquery returnerer noen rad. EXISTS operatør returnerer TRUE hvis subquery returnerer en eller flere rader.,

følgende viser syntaksen for SQL Server EXISTS bruker:

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

I denne syntaks, den subquery er en SELECT statement bare. Så snart subquery returnerer rader, EXISTS operatør returnerer TRUE og stoppe behandling umiddelbart.

Merk at selv om subquery returnerer en NULL verdi EXISTS operatør er likevel vurdert til TRUE.,

SQL-Serveren FINNES operatør eksempler

La oss ta noen eksempler for å forstå hvordan EXISTS operatør fungerer.

A) ved Hjelp EKSISTERER med en subquery returnerer NULL eksempel

Se følgende customers tabell fra eksempeldatabasen.,

følgende eksempel returnerer alle radene fra customers tabell:

I dette eksempelet subquery tilbake et resultat som inneholder NULL som fører til at den EXISTS – operatoren til å vurdere å TRUE. Derfor, hele spørringen returnerer alle radene fra customers tabell.,

B) Bruke EKSISTERER med et korrelert subquery eksempel

bør du Vurdere følgende customers og orders tabeller:

dette eksemplet finner alle kunder som har plassert mer enn to bestillinger:

I dette eksemplet, vi hadde en korrelert subquery som returnerer kunder som sted mer enn to bestillinger.,

Hvis antallet bestillinger som legges inn av kunden er mindre enn eller lik to, subquery returnerer et tomt resultat som forårsaker EXISTS – operatoren til å vurdere å FALSE.

Basert på resultatet av EXISTS operatør, vil kunden bli inkludert i resultat.

C) EKSISTERER vs., I eksempel

følgende uttalelse bruker IN – operatoren til å finne den bestillinger av kunder fra San Jose:

følgende uttalelse bruker EXISTS operatør som gir samme resultat:

EKSISTERER vs. BLI med

EXISTS operatør returnerer TRUE eller FALSE mens JOIN klausulen returnerer rader fra en annen tabell.,

Du bruker EXISTS operatøren å teste om en subquery returnerer en rad og kortslutning så fort som det gjør. På den annen side, bruker du JOIN for å utvide resultat av å kombinere det med kolonner fra relaterte tabeller.

I praksis, kan du bruke EXISTS når du trenger bare å sjekke eksistensen av rader fra relaterte tabeller uten returnning data fra dem.

I denne opplæringen, har du lært hvordan du bruker SQL Server EXISTS operatøren å teste om en subquery returnerer rader.