用Union優化Like語句
1)有時候,你可能需要在查詢中使用or操作符進行比較。當or關鍵字在where子句中使用頻率過高的時候,它可能會使MySQL優化器錯誤的選擇全表掃描來檢索記錄。 union子句可以是查詢執行的更快,尤其是當其中一個查詢有一個最佳化索引,而另一個查詢也有一個最佳化索引的時候。
例如,在first_name和last_name上分別存在索引的情況下,執行如下查詢語句:
mysql> select * from students where first_name like 'Ade%' or last_name like 'Ade%'
上述查詢和下面使用union合併兩條充分利用查詢語句的查詢相比,速度慢了許多。
mysql> select * from students where first_name like 'Ade%' union all select * from students wherelast_name like 'Ade%'
以上是MySQL中怎麼用Union優化Like語句的詳細內容。更多資訊請關注PHP中文網其他相關文章!