В этом учебном материале вы узнаете, как использовать Oracle условие OR с синтаксисом и примерами.
Описание
Oracle условие OR (называемое, также оператор OR) используется для проверки нескольких условий, в которых записи возвращаются, когда какое-либо из условий истинно. Может быть использовано в SELECT, INSERT, UPDATE или DELETE.
Синтаксис
Синтаксис для условия OR в Oracle/PLSQL:
OR condition2
...
OR condition_n;
Параметры или аргументы
condition1, condition2, condition_n
Все условия, которые должны быть выполнены для выбранных записей.
Логика condition1 OR condition2
condition1 | condition2 | condition1 OR condition2 |
---|---|---|
TRUE | TRUE | TRUE |
TRUE | FALSE | TRUE |
TRUE | NULL | TRUE |
FALSE | TRUE | TRUE |
FALSE | FALSE | FALSE |
FALSE | NULL | NULL |
NULL | TRUE | TRUE |
NULL | FALSE | NULL |
NULL | NULL | NULL |
Примечание
- Oracle условие OR позволяет проверить 2 или более условий.
- Требование Oarcle условия OR, чтобы все условия (condition1, condition2, condition_n) должны быть выполнены для записей, которые включены в результирующий набор.
Пример с оператором SELECT
Первый пример Oracle условия OR, который мы рассмотрим, включен в оператор SELECT с 2-мя условиями:
1 2 3 4 |
SELECT * FROM customers WHERE state = 'Nevada' OR available_credit > 700; |
Этот пример Oracle условия OR возвратит всех customers, которые находятся либо в state ‘Nevada’ или available_credit больше 700. Поскольку в SELECT используется *, то все поля из таблицы customers попадут в результирующий набор.
Пример оператора SELECT (с 3-мя условиями)
Следующий пример Oracle условия OR имеет вид оператора SELECT с 3-мя условиями. Если какое-либо из этих условий не выполняется, то запись будет включена в набор результатов.
1 2 3 4 5 |
SELECT supplier_id FROM suppliers WHERE supplier_name = 'INTEL' OR city = 'Boston' OR offices > 7; |
Этот пример Oracle условия OR возвратит все значения supplier_id, где supplier_name либо ‘INTEL’, либо city ‘Boston’, или offices больше 7.
Пример с оператором INSERT
Oracle условие OR может быть использовано в операторе INSERT.
Например:
1 2 3 4 5 6 |
INSERT INTO suppliers (supplier_id, supplier_name) SELECT account_no, name FROM customers WHERE city = 'Las Vegas' OR city = 'Denver'; |
Этот пример Oracle условия OR вставит в таблицу suppliers, все записи account_no, name из таблицы customers, которые находятся в city ‘Las Vegas’ или ‘Denver’.
Пример с оператором UPDATE
Oracle условие OR может быть использовано в операторе UPDATE.
Например:
1 2 3 4 |
UPDATE suppliers SET supplier_name = 'Nike' WHERE supplier_name = 'Adidas' OR available_products < 9; |
Этот пример Oracle условия OR обновит все значения поля supplier_name таблицы suppliers в ‘Nike’, где supplier_name было ‘Adidas’ или его availabe_products было меньше 9.
Пример с DELETE
Oracle условие OR может быть использовано в операторе DELETE.
Например:
1 2 3 |
DELETE FROM suppliers WHERE supplier_name = 'Epson' OR employees >= 60; |
В этом примере Oracle условия OR удалятся все записи из таблицы suppliers, чьи supplier_name было ‘Epson’ или их employees было больше или равно 60.