Ved hjelp av denne guiden vil vi lære om In og ikke i operatørene for å spesifisere betinget logikk i en uttalelse som SELECT, Sett inn, oppdatering og slette.
SQL Server i operatøren
La oss starte med in -operatøren, da det vil legge et fast fundament når vi kommer til ikke i operatøren.
In -Clause i SQL er en logisk operatør som lar deg vurdere om en spesifikk verdi er innenfor et gitt sett.
Enkelt sagt, tenk på i operatøren som å stille et spørsmål: er verdien (a) i settet til (a, b, c, d)?
Følgende demonstrerer syntaksen til In -operatøren i SQL Server
Hvor kolonne_navn | uttrykk i (set_of_values);Ovennevnte syntaks inneholder følgende parametere.
Siden i -leddet er en logisk operatør, returnerer den en boolsk verdi. Hvis den finner kolonnen eller uttrykket i settet med verdier, returnerer den sant og usant hvis annet.
I operatør: Eksempel
Anta at vi har en tabell som inneholder utviklere ansatt i et bestemt selskap. Vi kan bruke in -operatøren til å få postene der utviklernes lønn er lik et sett med verdier.
Tenk på eksemplet nedenfor:
Velg * fra utviklere der lønn i ($ 120000, $ 140000, $ 109000) bestilling etter lønn DESC;Spørringen ovenfor skal søke i lønnen til ovennevnte verdier og returnere de samsvarende postene.
Eksempelutgang er som vist:
Eksempel 2:
Vi kan også bruke in -operatøren til å utføre en sletterklæring. Tenk på eksemplet som er vist i spørringen nedenfor:
Slett fra utviklere hvor lønn i ($ 120000, $ 1000, $ 10000000, $ 145500);Ovennevnte spørring skal finne de matchende radene og slette dem fra tabellen.
Utgangen er som vist:
(1 rad berørt)SQL Server ikke i operatøren
Ikke i operatøren er tett lik den i operatøren. Imidlertid brukes det til å negere i operatøren.
Dette betyr, i motsetning til i operatøren, returnerer ikke i leddet sant hvis kolonnen eller uttrykket ikke finnes i settet.
Ikke i operatør: Eksempel:
La oss ta det første eksemplet og negere resultatet. Spørringen er som vist:
Velg * fra utviklere der lønn ikke i ($ 120000, $ 140000, $ 109000) bestilling etter lønn DESC;I dette tilfellet skal spørringen returnere radene der lønnen er noen annen verdi bortsett fra de i settet.
Utgangen er som vist:
Lukking
I denne artikkelen lærte du hvordan du bruker IN og ikke i operatører i SQL Server. Husk at vi kan bruke den ikke -operatøren sammen med andre klausuler som IS, mellom, som og eksisterer. Tenk på dokumentene for å oppdage.
Takk for at du leser!