Конъюнктивные операторы AND и OR
PostgreSQL AND и ORоператоры используются для объединения нескольких условий для сужения выбранных данных в операторе PostgreSQL. Эти два оператора называются конъюнктивными операторами.
Эти операторы позволяют выполнять несколько сравнений с разными операторами в одном операторе PostgreSQL.
Оператор AND
В ANDОператор допускает наличие нескольких условий в предложении WHERE оператора PostgreSQL. При использовании оператора И полное условие будет считаться истинным, если все условия истинны. Например, [условие1] И [условие2] будет истинным только тогда, когда истинны и условие1, и условие2.
Синтаксис
Основной синтаксис оператора AND с предложением WHERE следующий:
SELECT column1, column2, columnN
FROM table_name
WHERE [condition1] AND [condition2]...AND [conditionN];
Вы можете объединить N условий, используя оператор AND. Для выполнения оператором PostgreSQL действия, будь то транзакция или запрос, все условия, разделенные оператором AND, должны быть ИСТИНА.
пример
Рассмотрим таблицу КОМПАНИЯ, имеющую следующие записи:
testdb# select * from COMPANY;
id | name | age | address | salary
----+-------+-----+-----------+--------
1 | Paul | 32 | California| 20000
2 | Allen | 25 | Texas | 15000
3 | Teddy | 23 | Norway | 20000
4 | Mark | 25 | Rich-Mond | 65000
5 | David | 27 | Texas | 85000
6 | Kim | 22 | South-Hall| 45000
7 | James | 24 | Houston | 10000
(7 rows)
Следующий оператор SELECT перечисляет все записи, в которых AGE больше или равен 25. AND зарплата больше или равна 65000.00 -
testdb=# SELECT * FROM COMPANY WHERE AGE >= 25 AND SALARY >= 65000;
Приведенный выше оператор PostgreSQL даст следующий результат:
id | name | age | address | salary
----+-------+-----+------------+--------
4 | Mark | 25 | Rich-Mond | 65000
5 | David | 27 | Texas | 85000
(2 rows)
Оператор операционной
Оператор OR также используется для объединения нескольких условий в предложении WHERE оператора PostgreSQL. При использовании оператора OR полное условие будет считаться истинным, если хотя бы одно из условий истинно. Например, [условие1] ИЛИ [условие2] будет истинным, если истинно либо условие1, либо условие2.
Синтаксис
Основной синтаксис оператора OR с предложением WHERE следующий:
SELECT column1, column2, columnN
FROM table_name
WHERE [condition1] OR [condition2]...OR [conditionN]
Вы можете объединить N условий, используя оператор ИЛИ. Чтобы оператор PostgreSQL выполнял какое-либо действие, будь то транзакция или запрос, только любое ОДНО из условий, разделенных оператором OR, должно иметь значение ИСТИНА.
пример
Рассмотрим таблицу КОМПАНИИ , имеющую следующие записи -
# select * from COMPANY;
id | name | age | address | salary
----+-------+-----+-----------+--------
1 | Paul | 32 | California| 20000
2 | Allen | 25 | Texas | 15000
3 | Teddy | 23 | Norway | 20000
4 | Mark | 25 | Rich-Mond | 65000
5 | David | 27 | Texas | 85000
6 | Kim | 22 | South-Hall| 45000
7 | James | 24 | Houston | 10000
(7 rows)
Следующий оператор SELECT перечисляет все записи, в которых AGE больше или равен 25. OR зарплата больше или равна 65000.00 -
testdb=# SELECT * FROM COMPANY WHERE AGE >= 25 OR SALARY >= 65000;
Приведенный выше оператор PostgreSQL даст следующий результат:
id | name | age | address | salary
----+-------+-----+------------+--------
1 | Paul | 32 | California | 20000
2 | Allen | 25 | Texas | 15000
4 | Mark | 25 | Rich-Mond | 65000
5 | David | 27 | Texas | 85000
(4 rows)