PostgreSQL IN, Ikke IN med eksempler

Hva er PostgreSQL I ?

IN-operatoren brukes i en WHERE-klausul som gjør det mulig å sjekke om en verdi finnes i en liste med andre verdier. I Operation bidrar til å redusere behovet for flere OR-betingelser i SELECT-, UPDATE-, INSERT- eller DELETE-setninger.

syntax

IN-operatoren tar følgende syntaks:

value IN (value_1, value_2, ...)

Verdien er verdien du ser etter i listen.

Verdi_1, verdi_2... er listeverdiene.

Hvis verdien finnes i listen, vil operatøren returnere en sann.

Listen kan være et sett med antall strenger eller til og med utdataresultatet av en SELECT-setning som vist nedenfor:

value IN (SELECT value FROM table-name);

Utsagnet plassert i parentesen er kjent som en underspørring.

Med karakter

La oss demonstrere hvordan du kan bruke IN-operatoren med tegnverdier.

Tenk på følgende tabell:

ansatte:

PostgreSQL Inn med karakter

La oss kjøre følgende spørring mot tabellen ovenfor:

SELECT *
FROM Employees
WHERE name IN ('James John', 'Mercy Bush', 'Kate Joel');

Den returnerer følgende:

PostgreSQL Inn med karakter

Vi har en liste med tre navn. Vi søker etter om vi kan finne noen av disse navnene i navnekolonnen i tabellen Ansatte. Kate Joel ble matchet til en av bordets rekorder, og detaljene ble returnert.

Med numerisk

La oss nå se hvordan vi kan bruke IN-operatoren med numeriske verdier.

Vurder pristabellen nedenfor:

Pris:

PostgreSQL Inn med numerisk

Vi kan kjøre følgende spørring mot tabellen:

SELECT *
FROM Price
WHERE price IN (200, 308, 250, 550);

Dette returnerer følgende:

PostgreSQL Inn med numerisk

Vi har laget en liste med 4 numeriske verdier. Vi sjekker om vi kan matche noen av disse verdiene med verdiene i priskolonnen i pristabellen. To verdier ble matchet, og detaljene deres ble returnert.

Bruker NOT-operatør

IN-operatøren kan brukes sammen med NOT-operatøren. Den returnerer verdiene som ikke finnes i den angitte kolonnen. Vi vil bruke pristabellen for å demonstrere dette.

SELECT *
FROM Price
WHERE price NOT IN (200, 400, 190, 230);

Dette vil returnere følgende:

PostgreSQL Ved bruk av NOT-operator

Vi har laget en liste med 4 numeriske verdier. Vi sjekker priskolonnen i Pristabellen for verdier som ikke er en del av listen. To verdier, 250 og 300, ble ikke funnet. Derfor har opplysningene deres blitt returnert.

Bruker pgAdmin

La oss nå se hvordan handlingene kan utføres ved hjelp av pgAdmin.

Med karakter

For å oppnå det samme gjennom pgAdmin, gjør dette:

Trinn 1) Logg på pgAdmin-kontoen din.

Trinn 2)

  1. Fra navigasjonslinjen til venstre klikker du på Databaser.
  2. Klikk på Demo.

Bruke pgAdmin med tegn

Trinn 3) Skriv inn søket i spørringsredigeringsprogrammet:

SELECT *
FROM Employees
WHERE name IN ('James John', 'Mercy Bush', 'Kate Joel');

Trinn 4) Klikk på Utfør-knappen.

Bruke pgAdmin med tegn

Den skal returnere følgende:

Bruke pgAdmin med tegn

Med numerisk

For å oppnå det samme gjennom pgAdmin, gjør dette:

Trinn 1) Logg på pgAdmin-kontoen din.

Trinn 2)

  1. Fra navigasjonslinjen til venstre klikker du på Databaser.
  2. Klikk på Demo.

Bruke pgAdmin med numerisk

Trinn 3) Skriv inn søket i spørringsredigeringsprogrammet:

SELECT *
FROM Price
WHERE price IN (200, 308, 250, 550);

Trinn 4) Klikk på Utfør-knappen.

Bruke pgAdmin med numerisk

Den skal returnere følgende:

Bruke pgAdmin med numerisk

Bruker NOT-operatør

For å oppnå det samme gjennom pgAdmin, gjør dette:

Trinn 1) Logg på pgAdmin-kontoen din.

Trinn 2)

  1. Fra navigasjonslinjen til venstre klikker du på Databaser.
  2. Klikk på Demo.

Bruker NOT-operatør

Trinn 3) Skriv inn søket i spørringsredigeringsprogrammet:

SELECT *
FROM Price
WHERE price NOT IN (200, 400, 190, 230);

Trinn 4) Klikk på Utfør-knappen.

Bruker NOT-operatør

Den skal returnere følgende:

Bruker NOT-operatør

Sammendrag

  • IN-operatoren brukes med WHERE-operatoren. Den lar deg sjekke om en bestemt verdi er tilstede i en spesifikk tabell.
  • IN-operatoren hjelper til med å redusere behovet for flere OR-operatorer i SELECT-, UPDATE-, INSERT- eller DELETE-setninger.
  • Når du oppretter en tegnliste for å se etter tilstedeværelsen av en verdi, bør hver verdi i listen omsluttes av enkle anførselstegn.
  • IN-operatoren kan også brukes med numeriske verdier.
  • Når IN-operatoren brukes sammen med NOT-operatoren, returnerer den alle verdier som ikke finnes i den angitte kolonnen.

Last ned databasen som brukes i denne opplæringen

Oppsummer dette innlegget med: