PostgreSQL IN, Inte IN med exempel

Vad är PostgreSQL I ?

IN-operatorn används i en WHERE-sats som gör det möjligt att kontrollera om ett värde finns i en lista med andra värden. I Operation hjälper till att minska behovet av flera OR-villkor i SELECT-, UPDATE-, INSERT- eller DELETE-satser.

syntax

IN-operatorn tar följande syntax:

value IN (value_1, value_2, ...)

Värdet är det värde som du letar efter i listan.

Värde_1, värde_2... är listvärdena.

Om värdet hittas i listan kommer operatören att returnera ett sant.

Listan kan vara en uppsättning antal strängar eller till och med resultatet av en SELECT-sats enligt nedanstående:

value IN (SELECT value FROM table-name);

Satsen placerad inom parentes kallas en underfråga.

Med karaktär

Låt oss visa hur du kan använda IN-operatorn med teckenvärden.

Tänk på följande tabell:

Anställda:

PostgreSQL In Med Karaktär

Låt oss köra följande fråga mot tabellen ovan:

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

Den returnerar följande:

PostgreSQL In Med Karaktär

Vi har en lista med tre namn. Vi söker efter om vi kan hitta något av dessa namn i namnkolumnen i tabellen Anställda. Kate Joel matchades till ett av tabellens rekord, och dess uppgifter returnerades.

Med numerisk

Låt oss nu se hur vi kan använda IN-operatorn med numeriska värden.

Tänk på pristabellen nedan:

Pris:

PostgreSQL In med Numerisk

Vi kan köra följande fråga mot tabellen:

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

Detta returnerar följande:

PostgreSQL In med Numerisk

Vi har skapat en lista med 4 numeriska värden. Vi kontrollerar om vi kan matcha något av dessa värden med värdena i priskolumnen i pristabellen. Två värden matchades och deras uppgifter returnerades.

Använder NOT-operatorn

IN-operatorn kan användas tillsammans med NOT-operatorn. Den returnerar de värden som inte finns i den angivna kolumnen. Vi kommer att använda pristabellen för att visa detta.

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

Detta kommer att returnera följande:

PostgreSQL Om du använder NOT-operatorn

Vi har skapat en lista med 4 numeriska värden. Vi kontrollerar priskolumnen i pristabellen för värden som inte ingår i listan. Två värden, 250 och 300, hittades inte. Därför har deras uppgifter returnerats.

Använder pgAdmin

Låt oss nu se hur åtgärderna kan utföras med pgAdmin.

Med karaktär

För att åstadkomma samma sak genom pgAdmin, gör så här:

Steg 1) Logga in på ditt pgAdmin-konto.

Steg 2)

  1. Klicka på Databaser i navigeringsfältet till vänster.
  2. Klicka på Demo.

Använda pgAdmin med tecken

Steg 3) Skriv in frågan i frågeredigeraren:

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

Steg 4) Klicka på knappen Kör.

Använda pgAdmin med tecken

Det bör returnera följande:

Använda pgAdmin med tecken

Med numerisk

För att åstadkomma samma sak genom pgAdmin, gör så här:

Steg 1) Logga in på ditt pgAdmin-konto.

Steg 2)

  1. Klicka på Databaser i navigeringsfältet till vänster.
  2. Klicka på Demo.

Använda pgAdmin med Numeric

Steg 3) Skriv in frågan i frågeredigeraren:

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

Steg 4) Klicka på knappen Kör.

Använda pgAdmin med Numeric

Det bör returnera följande:

Använda pgAdmin med Numeric

Använder NOT-operatorn

För att åstadkomma samma sak genom pgAdmin, gör så här:

Steg 1) Logga in på ditt pgAdmin-konto.

Steg 2)

  1. Klicka på Databaser i navigeringsfältet till vänster.
  2. Klicka på Demo.

Använder NOT-operatorn

Steg 3) Skriv in frågan i frågeredigeraren:

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

Steg 4) Klicka på knappen Kör.

Använder NOT-operatorn

Det bör returnera följande:

Använder NOT-operatorn

Sammanfattning

  • IN-operatorn används med WHERE-operatorn. Det gör det möjligt att kontrollera om ett visst värde finns i en specifik tabell.
  • IN-operatorn hjälper till att minska behovet av flera OR-operatorer i SELECT-, UPDATE-, INSERT- eller DELETE-satser.
  • När du skapar en teckenlista för att kontrollera förekomsten av ett värde, bör varje värde i listan omges av enkla citattecken.
  • IN-operatorn kan också användas med numeriska värden.
  • När IN-operatorn används tillsammans med NOT-operatorn returnerar den alla värden som inte finns i den angivna kolumnen.

Ladda ner den databas som används i denna handledning