PostgreSQL IN, niet IN met voorbeelden

Inhoudsopgave:

Anonim

Waar 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 Operation helpt het om de behoefte aan meerdere OR-voorwaarden in SELECT-, UPDATE-, INSERT- of DELETE-instructies te verminderen.

In deze PostgreSQL-zelfstudie leert u het volgende:

  • Waar is PostgreSQL in?
  • Syntaxis
  • Met karakter
  • Met numeriek
  • Met de NOT-operator
  • Met behulp van pgAdmin

Syntaxis

De IN-operator heeft de volgende syntaxis:

value IN (value_1, value_2,… )

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

De waarde_1, waarde_2

… Zijn de lijstwaarden.

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

De lijst kan een reeks getallen strings zijn of zelfs het uitvoerresultaat van een SELECT-instructie, zoals hieronder wordt weergegeven:

value IN (SELECT value FROM table-name);

De instructie die tussen haakjes wordt geplaatst, wordt een subquery genoemd.

Met karakter

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

Beschouw de volgende tabel:

Werknemers:

Laten we de volgende query uitvoeren op de bovenstaande tabel:

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

Het retourneert het volgende:

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

Met numeriek

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

Beschouw de onderstaande prijstabel:

Prijs:

We kunnen de volgende query uitvoeren op de tabel:

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

Dit levert het volgende op:

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

Met de NOT-operator

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

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

Dit levert het volgende op:

We hebben een lijst gemaakt met 4 numerieke waarden. We controleren de prijskolom van de prijstabel op waarden die geen deel uitmaken van de lijst. Twee waarden, 250 en 300, werden niet gevonden. Daarom zijn hun gegevens teruggestuurd.

Met behulp van pgAdmin

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

Met karakter

Om hetzelfde te bereiken met pgAdmin, doe je dit:

Stap 1) Log in op uw pgAdmin-account.

Stap 2)

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

Stap 3) Typ de vraag in de zoekopdrachteditor:

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

Stap 4) Klik op de knop Uitvoeren.

Het zou het volgende moeten retourneren:

Met numeriek

Om hetzelfde te bereiken met pgAdmin, doe je dit:

Stap 1) Log in op uw pgAdmin-account.

Stap 2)

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

Stap 3) Typ de vraag in de zoekopdrachteditor:

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

Stap 4) Klik op de knop Uitvoeren.

Het zou het volgende moeten retourneren:

Met de NOT-operator

Om hetzelfde te bereiken met pgAdmin, doe je dit:

Stap 1) Log in op uw pgAdmin-account.

Stap 2)

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

Stap 3) Typ de vraag in de zoekopdrachteditor:

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

Stap 4) Klik op de knop Uitvoeren.

Het zou het volgende moeten retourneren:

Overzicht:

  • De IN-operator wordt gebruikt met de WHERE-operator. Het maakt het mogelijk om te controleren of een bepaalde waarde aanwezig is in een specifieke tabel.
  • De IN-operator helpt bij het verminderen van de behoefte aan meerdere OR-operators in SELECT-, UPDATE-, INSERT- of DELETE-instructies.
  • Bij het maken van een tekenlijst om te controleren op de aanwezigheid van een waarde, moet elke waarde in de lijst tussen enkele aanhalingstekens staan.
  • De IN-operator kan ook worden gebruikt met numerieke waarden.
  • Wanneer de IN-operator samen met de NOT-operator wordt gebruikt, retourneert deze alle waarden die niet in de opgegeven kolom zijn gevonden.

Download de database die in deze zelfstudie wordt gebruikt