PostgreSQL IN, Niet IN met voorbeelden

Wat is PostgreSQL In ?

De IN-operator wordt gebruikt in een WHERE-clausule waarmee kan worden gecontroleerd of een waarde aanwezig is in een lijst met andere waarden. In OperaDeze functie helpt de noodzaak voor meerdere OR-voorwaarden in SELECT-, UPDATE-, INSERT- of DELETE-instructies te verminderen.

Syntaxis

De IN-operator heeft de volgende syntaxis:

value IN (value_1, value_2, ...)

De waarde is de waarde waarnaar u zoekt in de lijst.

De waarde_1, waarde_2... zijn de lijstwaarden.

Als de waarde in de lijst wordt gevonden, retourneert de operator true.

De lijst kan een reeks strings zijn of zelfs het uitvoerresultaat van een SELECT-instructie zoals hieronder aangegeven:

value IN (SELECT value FROM table-name);

De verklaring die tussen haakjes wordt geplaatst, staat bekend als een subquery.

Met karakter

Laten we eens kijken hoe u de IN-operator kunt gebruiken met tekenwaarden.

Beschouw de volgende tabel:

Werknemers:

PostgreSQL Met karakter

Laten we de volgende query uitvoeren op de bovenstaande tabel:

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

Het retourneert het volgende:

PostgreSQL Met karakter

We hebben een lijst met drie namen. We zoeken of we een van deze namen kunnen vinden in de naamkolom van de tabel Employees. De Kate Joel werd gekoppeld aan een van de records van de tabel en de details ervan werden geretourneerd.

Met numeriek

Laten we nu eens kijken hoe we de IN-operator met numerieke waarden kunnen gebruiken.

Beschouw de onderstaande prijstabel:

Prijs:

PostgreSQL In met numeriek

We kunnen de volgende query op de tabel uitvoeren:

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

Dit geeft het volgende terug:

PostgreSQL In met numeriek

We hebben een lijst met 4 numerieke waarden gemaakt. We controleren of we een van deze waarden kunnen matchen met de waarden in de prijskolom van de prijstabel. Twee waarden werden gematcht en hun details werden geretourneerd.

Gebruik van de NOT-operator

De IN-operator kan samen met de NOT-operator worden gebruikt. Deze retourneert de waarden die niet in de opgegeven kolom zijn gevonden. We gebruiken de Price-tabel om dit te demonstreren.

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

Dit retourneert het volgende:

PostgreSQL Bij het gebruik van de NOT-operator

We hebben een lijst met 4 numerieke waarden gemaakt. We controleren de prijskolom van de prijstabel op waarden die niet in de lijst voorkomen. Twee waarden, 250 en 300, werden niet gevonden. Daarom zijn hun details geretourneerd.

Gebruik pgAdmin

Laten we nu eens kijken hoe de acties kunnen worden uitgevoerd met pgAdmin.

Met karakter

Om hetzelfde te bereiken via pgAdmin, doet u het volgende:

Stap 1) Log in op uw pgAdmin-account.

Stap 2)

  1. Klik in de navigatiebalk aan de linkerkant op Databases.
  2. Klik op Demo.

Gebruik pgAdmin met karakter

Stap 3) Typ de query in de query-editor:

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

Stap 4) Klik op de knop Uitvoeren.

Gebruik pgAdmin met karakter

Het volgende zou moeten worden geretourneerd:

Gebruik pgAdmin met karakter

Met numeriek

Om hetzelfde te bereiken via pgAdmin, doet u het volgende:

Stap 1) Log in op uw pgAdmin-account.

Stap 2)

  1. Klik in de navigatiebalk aan de linkerkant op Databases.
  2. Klik op Demo.

pgAdmin gebruiken met numeriek

Stap 3) Typ de query in de query-editor:

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

Stap 4) Klik op de knop Uitvoeren.

pgAdmin gebruiken met numeriek

Het volgende zou moeten worden geretourneerd:

pgAdmin gebruiken met numeriek

Gebruik van de NOT-operator

Om hetzelfde te bereiken via pgAdmin, doet u het volgende:

Stap 1) Log in op uw pgAdmin-account.

Stap 2)

  1. Klik in de navigatiebalk aan de linkerkant op Databases.
  2. Klik op Demo.

Gebruik van de NOT-operator

Stap 3) Typ de query in de query-editor:

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

Stap 4) Klik op de knop Uitvoeren.

Gebruik van de NOT-operator

Het volgende zou moeten worden geretourneerd:

Gebruik van de NOT-operator

Samenvatting

  • De IN-operator wordt gebruikt met de WHERE-operator. Hiermee kan worden gecontroleerd of een bepaalde waarde in een specifieke tabel aanwezig is.
  • De IN-operator vermindert de noodzaak voor meerdere OR-operatoren in SELECT-, UPDATE-, INSERT- of DELETE-instructies.
  • Wanneer u een tekenlijst maakt om te controleren op de aanwezigheid van een waarde, moet elke waarde in de lijst tussen enkele aanhalingstekens worden geplaatst.
  • De IN-operator kan ook met numerieke waarden worden gebruikt.
  • Wanneer de IN-operator samen met de NOT-operator wordt gebruikt, worden alle waarden geretourneerd die niet in de opgegeven kolom zijn gevonden.

Download de database die in deze zelfstudie wordt gebruikt