PostgreSQL IN, Не IN с примери

Какво е PostgreSQL в ?

Операторът IN се използва в клауза WHERE, която позволява проверка дали дадена стойност присъства в списък с други стойности. в Operation помага да се намали необходимостта от множество условия ИЛИ в операторите SELECT, UPDATE, INSERT или DELETE.

Синтаксис

Операторът IN приема следния синтаксис:

value IN (value_1, value_2, ...)

Стойността е стойността, която проверявате в списъка.

Стойността_1, стойността_2… са стойностите в списъка.

Ако стойността е намерена в списъка, операторът ще върне истина.

Списъкът може да бъде набор от номера на низове или дори изходен резултат от a SELECT израз както е показано по-долу:

value IN (SELECT value FROM table-name);

Изявлението, поставено в скобите, е известно като подзаявка.

С характер

Нека демонстрираме как можете да използвате оператора IN със стойности на знаци.

Разгледайте следната таблица:

Служители:

PostgreSQL В с характер

Нека изпълним следната заявка спрямо горната таблица:

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

Връща следното:

PostgreSQL В с характер

Имаме списък с три имена. Търсим дали можем да намерим някое от тези имена в колоната с имена на таблицата Служители. Кейт Джоел беше съпоставен с един от рекордите на масата и данните за него бяха върнати.

С числови

Сега нека видим как можем да използваме оператора IN с числови стойности.

Разгледайте таблицата с цените, дадена по-долу:

Цена:

PostgreSQL В С числови

Можем да изпълним следната заявка към таблицата:

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

Това връща следното:

PostgreSQL В С числови

Създадохме списък с 4 числови стойности. Проверяваме дали можем да съпоставим някоя от тези стойности със стойностите, съдържащи се в ценовата колона на таблицата с цени. Бяха съпоставени две стойности и техните подробности бяха върнати.

Използване на оператор NOT

Операторът IN може да се използва заедно с оператора NOT. Връща стойностите, които не са намерени в указаната колона. Ще използваме таблицата с цените, за да демонстрираме това.

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

Това ще върне следното:

PostgreSQL При използване на оператор NOT

Създадохме списък с 4 числови стойности. Проверяваме ценовата колона на ценовата таблица за стойности, които не са част от списъка. Две стойности, 250 и 300, не бяха намерени. Следователно техните данни са върнати.

Използване на pgAdmin

Сега нека видим как действията могат да се извършват с pgAdmin.

С характер

За да постигнете същото чрез pgAdmin, направете следното:

Стъпка 1) Влезте във вашия pgAdmin акаунт.

Стъпка 2)

  1. От лентата за навигация вляво щракнете върху Бази данни.
  2. Щракнете върху Демо.

Използване на pgAdmin със символ

Стъпка 3) Въведете заявката в редактора на заявки:

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

Стъпка 4) Щракнете върху бутона Изпълнение.

Използване на pgAdmin със символ

Трябва да върне следното:

Използване на pgAdmin със символ

С числови

За да постигнете същото чрез pgAdmin, направете следното:

Стъпка 1) Влезте във вашия pgAdmin акаунт.

Стъпка 2)

  1. От лентата за навигация вляво щракнете върху Бази данни.
  2. Щракнете върху Демо.

Използване на pgAdmin с Numeric

Стъпка 3) Въведете заявката в редактора на заявки:

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

Стъпка 4) Щракнете върху бутона Изпълнение.

Използване на pgAdmin с Numeric

Трябва да върне следното:

Използване на pgAdmin с Numeric

Използване на оператор NOT

За да постигнете същото чрез pgAdmin, направете следното:

Стъпка 1) Влезте във вашия pgAdmin акаунт.

Стъпка 2)

  1. От лентата за навигация вляво щракнете върху Бази данни.
  2. Щракнете върху Демо.

Използване на оператор NOT

Стъпка 3) Въведете заявката в редактора на заявки:

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

Стъпка 4) Щракнете върху бутона Изпълнение.

Използване на оператор NOT

Трябва да върне следното:

Използване на оператор NOT

Oбобщение

  • Операторът IN се използва с оператора WHERE. Позволява проверка дали конкретна стойност присъства в конкретна таблица.
  • Операторът IN помага за намаляване на необходимостта от множество оператори ИЛИ в операторите SELECT, UPDATE, INSERT или DELETE.
  • Когато създавате списък със знаци за проверка за наличие на стойност, всяка стойност в списъка трябва да бъде оградена в единични кавички.
  • Операторът IN може да се използва и с числови стойности.
  • Когато операторът IN се използва заедно с оператора NOT, той връща всички стойности, които не са намерени в указаната колона.

Изтеглете базата данни, използвана в този урок