PostgreSQL условие IN

В этом учебном пособии вы узнаете, как использовать условие IN в PostgreSQL с синтаксисом и примерами.

Описание

PostgreSQL условие IN используется, чтобы уменьшить необходимость использования нескольких условий OR в операторе SELECT, INSERT, UPDATE или DELETE.

Синтаксис

Синтаксис для условия IN в PostgreSQL:

expression IN (value1, value2,.... value_n);

ИЛИ

expression IN (subquery);

Параметры или аргументы

expression
Значение для проверки.
value1, value2... или value_n
Значения для проверки на соответствие expression.
subquery
Это оператор SELECT, чей набор результатов будет проверен на соответствие expression. Если какое-либо из этих значений соответствует expression, условие IN будет иметь значение true.

Примечание

  • PostgreSQL условие IN будет возвращать записи, в которых expression равно value1, value2... или value_n.
  • PostgreSQL условие IN также называется оператором PostgreSQL IN.

Пример - с символами

Рассмотрим пример PostgreSQL условия IN с использованием символьных значений.
Ниже приведен PostgreSQL оператор SELECT, который использует условие IN для сравнения значений символов:

В этом PostgreSQL примере условия IN будут возвращены все строки из таблицы suppliers, где supplier_name равно «Apple», «Samsung» или «Asus». Поскольку в SELECT используется *, то все поля из таблицы suppliers будут отображаться в результирующем наборе.
Приведенный выше пример IN эквивалентен следующему оператору SELECT:

Как вы можете видеть, использование PostgreSQL условия IN делает оператор более простым для чтения и более эффективным.

Пример - с числами

Далее Рассмотрим пример PostgreSQL условия IN с использованием числовых значений.
Например:

Этот пример PostgreSQL условия IN вернет все записи из таблицы employees, для которых employee_id равно 300, 301, 500 или 501.
Приведенный выше пример IN эквивалентен следующему утверждению SELECT:

Пример - использование оператора NOT

Наконец, Рассмотрим пример условия IN с использованием оператора NOT.
Например:

Этот пример PostgreSQL условия IN вернул бы все строки из таблицы suppliers, где supplier_name не «Apple», «Samsung» или «Asus». Иногда более эффективно перечислять значения, которые вы не хотите, в отличие от значений, которые вы хотите.