Vad är PostgreSQL i?
IN-operatören 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 drift hjälper till att minska behovet av flera ELLER-villkor i SELECT-, UPDATE-, INSERT- eller DELETE-uttalanden.
I den här PostgreSQL-självstudien lär du dig följande:
- Vad är PostgreSQL i?
- Syntax
- Med karaktär
- Med Numeric
- Använder INTE operatör
- Använda pgAdmin
Syntax
IN-operatören tar följande syntax:
value IN (value_1, value_2,… )
Värdet är det värde du söker efter i listan.
Värdet_1, värdet_2
... är listvärdena.Om värdet finns i listan kommer operatören att returnera ett sant.
Listan kan vara en uppsättning antal strängar eller till och med resultatet av ett SELECT-uttalande som visas nedan:
value IN (SELECT value FROM table-name);
Uttalandet placerat inom parentes är känt som en underfråga.
Med karaktär
Låt oss visa hur du kan använda IN-operatören med teckenvärden.
Tänk på följande tabell:
Anställda:
Låt oss köra följande fråga mot ovanstående tabell:
SELECT *FROM EmployeesWHERE name IN ('James John', 'Mercy Bush', 'Kate Joel');
Det returnerar följande:
Vi har en lista med tre namn. Vi letar efter om vi kan hitta något av dessa namn i namnkolumnen i tabellen Anställda. Kate Joel matchades till en av tabellens register, och dess detaljer återlämnades.
Med Numeric
Låt oss nu se hur vi kan använda IN-operatören med numeriska värden.
Tänk på pristabellen nedan:
Pris:
Vi kan köra följande fråga mot tabellen:
SELECT *FROM PriceWHERE price IN (200, 308, 250, 550);
Detta returnerar följande:
Vi har skapat en lista med fyra 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 detaljer returnerades.
Använder INTE operatör
IN-operatören kan användas tillsammans med NOT-operatören. 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 PriceWHERE price NOT IN (200, 400, 190, 230);
Detta returnerar följande:
Vi har skapat en lista med fyra 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ända pgAdmin
Låt oss nu se hur åtgärderna kan utföras med pgAdmin.
Med karaktär
För att åstadkomma samma genom pgAdmin, gör detta:
Steg 1) Logga in på ditt pgAdmin-konto.
Steg 2)
- Från navigeringsfältet till vänster - Klicka på databaser.
- Klicka på Demo.
Steg 3) Skriv frågan i frågeditoren:
SELECT *FROM EmployeesWHERE name IN ('James John', 'Mercy Bush', 'Kate Joel');
Steg 4) Klicka på knappen Kör.
Den ska returnera följande:
Med Numeric
För att åstadkomma samma genom pgAdmin, gör detta:
Steg 1) Logga in på ditt pgAdmin-konto.
Steg 2)
- Från navigeringsfältet till vänster - Klicka på databaser.
- Klicka på Demo.
Steg 3) Skriv frågan i frågeditoren:
SELECT *FROM PriceWHERE price IN (200, 308, 250, 550);
Steg 4) Klicka på knappen Kör.
Den ska returnera följande:
Använder INTE operatör
För att åstadkomma samma genom pgAdmin, gör detta:
Steg 1) Logga in på ditt pgAdmin-konto.
Steg 2)
- Från navigeringsfältet till vänster - Klicka på databaser.
- Klicka på Demo.
Steg 3) Skriv frågan i frågeditoren:
SELECT *FROM PriceWHERE price NOT IN (200, 400, 190, 230);
Steg 4) Klicka på knappen Kör.
Den ska returnera följande:
Sammanfattning:
- IN-operatören används med WHERE-operatören. Det gör det möjligt att kontrollera om ett visst värde finns i en specifik tabell.
- IN-operatören hjälper till att minska behovet av flera ELLER-operatörer i SELECT-, UPDATE-, INSERT- eller DELETE-uttalanden.
- När du skapar en teckenlista för att kontrollera om det finns ett värde, bör varje värde i listan bifogas inom enstaka citat.
- IN-operatören kan också användas med numeriska värden.
- När IN-operatören används tillsammans med NOT-operatören returnerar den alla värden som inte finns i den angivna kolumnen.
Ladda ner databasen som används i denna handledning