Related Documentation Download this Manual
PDF (US Ltr) - 40.8Mb
PDF (A4) - 40.9Mb
Man Pages (TGZ) - 294.0Kb
Man Pages (Zip) - 409.0Kb
Info (Gzip) - 4.0Mb
Info (Zip) - 4.0Mb
Excerpts from this Manual

MySQL 8.3 Reference Manual  /  ...  /  Searching on Two Keys

5.6.7 在两个键上搜索

使用单个键的 OR 运算符是优化的,如同处理 AND 运算符也是如此。

唯一棘手的情况是使用 OR 运算符搜索两个不同的键:

Press CTRL+C to copy
SELECT field1_index, field2_index FROM test_table WHERE field1_index = '1' OR field2_index = '1'

这种情况是优化的。请参阅 第 10.2.1.3 节,“索引合并优化”

您也可以使用 UNION 语句来高效解决问题,该语句将两个单独的 SELECT 语句的输出结合起来。请参阅 第 15.2.18 节,“UNION 子句”

每个 SELECT 语句只搜索一个键,可以进行优化:

Press CTRL+C to copy
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';