相關文件 下載本手冊
PDF (美式信紙) - 39.9Mb
PDF (A4) - 40.0Mb
Man Pages (TGZ) - 258.5Kb
Man Pages (Zip) - 365.5Kb
Info (Gzip) - 4.0Mb
Info (Zip) - 4.0Mb


MySQL 8.4 參考手冊  /  ...  /  搜尋兩個鍵值

5.6.7 搜尋兩個鍵值

使用單一鍵值的 OR 可以很好地最佳化,而 AND 的處理也是如此。

比較棘手的情況是使用 OR 組合搜尋兩個不同的鍵值。

SELECT field1_index, field2_index FROM test_table
WHERE field1_index = '1' OR  field2_index = '1'

這種情況已最佳化。請參閱 第 10.2.1.3 節「索引合併最佳化」

您也可以使用 UNION 有效率地解決問題,此 UNION 會結合兩個獨立 SELECT 陳述式的輸出。請參閱 第 15.2.18 節「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';