[英]MySQL improve query performance
我有這樣的查詢:
SELECT city.id, city.country_id, localization.lang , localization.name, ... some other fields ...
FROM city city
LEFT OUTER JOIN city_localization localization ON ( localization.city_id = city.id )
WHERE city.country_id = '196' AND localization.lang = 'en'
ORDER BY localization.name
“城市”表架構:
“city_localization”表模式:
解釋output:
如何避免使用文件排序和臨時文件?
您需要為localization.name
創建一個索引,為localization.city_id
創建另一個索引(您目前有一個還包括localization.lang
的索引)。
如果您要檢索很多行,您可能希望從 select 中刪除city.country_id
和localization.lang
,畢竟您已經有了這些值。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.