3.6.7 两个键上搜索
在一个键上使用 OR
非常好优化, 就像是处理 AND
一样.
一个棘手的情况是在两个不同的键上使用 OR
:
SELECT field1_index, field2_index FROM test_table
WHERE field1_index = '1' OR field2_index = '1'
这种情况优化过. 参阅 Section 8.2.1.3, “索引合并优化”.
你还可以使用 UNION
组合两个单独的 SELECT
语句的输出解决这个问题. 参阅 Section 13.2.10.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';