3.6.7 Поиск по двум ключам
Использование OR с одним ключом оптимизировано, как и обработка AND.
Сложный случай — поиск по двум разным ключам в сочетании с OR:
SELECT field1_index, field2_index FROM test_table
WHERE field1_index = '1' OR field2_index = '1'
Этот случай оптимизирован. Смотрите Раздел 8.2.1.3, «Оптимизация слияния индексов».
Вы также можете эффективно решить проблему, используя UNION, который объединяет результаты двух отдельных операторов SELECT. Смотрите Раздел 13.2.9.3, «Оператор UNION».
Каждый оператор SELECT ищет только по одному ключу и может быть оптимизирован:
SELECT field1_index, field2_index
FROM test_table WHERE field1_index = '1'
UNION
SELECT field1_index, field2_index
FROM test_table WHERE field2_index = '1';
© 2025 Oracle
Licensed under the GPLv2 License.