PostgreSQL оператор WHERE

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

Описание

PostgreSQL оператор WHERE используется для фильтрации результатов из оператора SELECT, INSERT, UPDATE или DELETE.

Синтаксис

Синтаксис для оператора WHERE в PostgreSQL:

WHERE conditions;

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

conditions
Условия, которые должны быть выполнены для выбора записей.

Пример - с одним условием

Сложно объяснить синтаксис PostgreSQL оператора WHERE, поэтому рассмотрим несколько примеров.

В этом примере мы использовали оператор WHERE для фильтрации наших результатов из таблицы employee. Приведенный выше оператор SELECT возвращает все строки из таблицы employee, где first_name равно 'Frosya'. Поскольку в SELECT используется *, то все поля из таблицы employee появятся в результирующем наборе.

Пример - использование условия AND

Этот пример использует оператор WHERE для определения нескольких условий. В этом случае оператор SELECT использует условие AND, чтобы вернуть все строки из employees, чье last_name равно 'Anderson', и чье employee_id меньше или равно 400.

Пример - использование условия OR

Этот пример использует оператор WHERE для определения нескольких условий, но вместо использования условия AND он использует условие OR. В этом случае этот оператор SELECT будет возвращать все значения product_name, где product_type имеет значение 'Hardware' или 'Software'.

Пример - объединения условий AND и OR

Этот пример использует оператор WHERE для определения нескольких условий, но в нем сочетаются AND условие и OR условие. В этом примере возвращаются все employees, у которых last_name - 'Abramov', а first_name - 'Petr', а также все записи из employees, чей employee_id больше или равно 699.
Скобки определяют порядок оценки условий AND и OR.

Пример - соединение таблиц

Этот пример использует оператор WHERE для соединения нескольких таблиц в один оператор SELECT. Этот оператор SELECT будет возвращать все значения product_name и quantity, если в таблицах products и inventory есть соответствующая запись на основе product_id и где product_type имеет значение 'Hardware'.