Spec-Zone .ru
спецификации, руководства, описания, API

3.6.7. Поиск на Двух Ключах

OR использование единственного ключа хорошо оптимизируется, как обработка AND.

Один хитрый случай является случаем поиска на двух различных ключах, объединенных с OR:

SELECT field1_index, field2_index FROM test_tableWHERE field1_index = '1' OR  field2_index = '1'

Этот случай оптимизируется. См. Раздел 8.13.2, "Индексируйте Оптимизация Слияния".

Можно также решить проблему эффективно при использовании a UNION это комбинирует вывод два отдельный SELECT операторы. См. Раздел 13.2.9.4,"UNION Синтаксис".

Каждый SELECT поискы только один ключ и могут быть оптимизированы:

SELECT field1_index, field2_index    FROM test_table WHERE field1_index = '1'UNIONSELECT field1_index, field2_indexFROM test_table WHERE field2_index = '1';