Какво представлява PostgreSQL?
Операторът IN се използва в клауза WHERE, която позволява да се провери дали дадена стойност присъства в списък с други стойности. In Operation помага да се намали необходимостта от множество условия на ИЛИ в оператори SELECT, UPDATE, INSERT или DELETE.
В този урок за PostgreSQL ще научите следното:
- Какво представлява PostgreSQL?
- Синтаксис
- С характер
- С Numeric
- Използване на оператор NOT
- Използване на pgAdmin
Синтаксис
Операторът IN приема следния синтаксис:
value IN (value_1, value_2,… )
Стойността е стойността, която проверявате в списъка.
Стойността_1, стойност_2
... са стойностите в списъка.Ако стойността бъде намерена в списъка, операторът ще върне true.
Списъкът може да бъде набор от номера на низове или дори изходен резултат от оператор SELECT, както е показано по-долу:
value IN (SELECT value FROM table-name);
Операторът, поставен в скобите, е известен като подзаявка.
С характер
Нека демонстрираме как можете да използвате оператора IN със символни стойности.
Обмислете следната таблица:
Служители:
Нека изпълним следната заявка спрямо горната таблица:
SELECT *FROM EmployeesWHERE name IN ('James John', 'Mercy Bush', 'Kate Joel');
Той връща следното:
Имаме списък с три имена. Търсим дали можем да намерим някое от тези имена в колоната с имена на таблицата Служители. Кейт Джоел беше съпоставена с един от записите на масата и нейните данни бяха върнати.
С Numeric
Сега нека видим как можем да използваме оператора IN с числови стойности.
Помислете за таблицата с цени, дадена по-долу:
Цена:
Можем да изпълним следната заявка спрямо таблицата:
SELECT *FROM PriceWHERE price IN (200, 308, 250, 550);
Това връща следното:
Създадохме списък с 4 числови стойности. Проверяваме дали можем да съпоставим някоя от тези стойности със стойностите, съдържащи се в ценовата колона на таблицата Цена. Две стойности бяха съпоставени и техните данни бяха върнати.
Използване на оператор NOT
Операторът IN може да се използва заедно с оператора NOT. Той връща стойностите, които не са намерени в посочената колона. Ще използваме таблицата с цени, за да демонстрираме това.
SELECT *FROM PriceWHERE price NOT IN (200, 400, 190, 230);
Това ще върне следното:
Създадохме списък с 4 числови стойности. Проверяваме ценовата колона в таблицата Цени за стойности, които не са част от списъка. Две стойности, 250 и 300, не бяха намерени. Следователно техните данни са върнати.
Използване на pgAdmin
Сега нека видим как действията могат да бъдат изпълнени с помощта на pgAdmin.
С характер
За да постигнете същото чрез pgAdmin, направете това:
Стъпка 1) Влезте във вашия pgAdmin акаунт.
Стъпка 2)
- От лентата за навигация вляво щракнете върху Бази данни.
- Щракнете върху Демо.
Стъпка 3) Въведете заявката в редактора на заявки:
SELECT *FROM EmployeesWHERE name IN ('James John', 'Mercy Bush', 'Kate Joel');
Стъпка 4) Щракнете върху бутона за изпълнение.
Той трябва да върне следното:
С Numeric
За да постигнете същото чрез pgAdmin, направете това:
Стъпка 1) Влезте във вашия pgAdmin акаунт.
Стъпка 2)
- От лентата за навигация вляво щракнете върху Бази данни.
- Щракнете върху Демо.
Стъпка 3) Въведете заявката в редактора на заявки:
SELECT *FROM PriceWHERE price IN (200, 308, 250, 550);
Стъпка 4) Щракнете върху бутона за изпълнение.
Той трябва да върне следното:
Използване на оператор NOT
За да постигнете същото чрез pgAdmin, направете това:
Стъпка 1) Влезте във вашия pgAdmin акаунт.
Стъпка 2)
- От лентата за навигация вляво щракнете върху Бази данни.
- Щракнете върху Демо.
Стъпка 3) Въведете заявката в редактора на заявки:
SELECT *FROM PriceWHERE price NOT IN (200, 400, 190, 230);
Стъпка 4) Щракнете върху бутона за изпълнение.
Той трябва да върне следното:
Резюме:
- Операторът IN се използва с оператора WHERE. Той позволява да се провери дали дадена стойност присъства в конкретна таблица.
- Операторът IN помага за намаляване на необходимостта от множество оператори ИЛИ в оператори SELECT, UPDATE, INSERT или DELETE.
- Когато създавате списък със знаци за проверка за наличие на стойност, всяка стойност в списъка трябва да бъде затворена в единични кавички.
- Операторът IN може да се използва и с цифрови стойности.
- Когато операторът IN се използва заедно с оператора NOT, той връща всички стойности, които не са намерени в посочената колона.
Изтеглете базата данни, използвана в този урок