0
我知道這已經被打敗了 - 但我還沒有看到一個非常好的答案。這裏是我的情況:我有以下查詢:按MySQL排序的另一個分組查詢
SELECT items.item_name, sort_order as total_count, user_top_favorites.item_id.item_id
FROM user_top_favorites
INNER JOIN items ON user_top_favorites.item_id = items.item_id
WHERE user_top_favorites.user_id = 1
GROUP by user_top_favorites.item_id.item_id
ORDER BY sort_order asc
LIMIT 0 , 6
我嘗試了以下指標:
user_sort (user_id, item_id, sort_order)
user_sort (item_id, user_id, sort_order)
user_sort (user_id, sort_order, item_id)
,我總是得到:Using temporary; Using filesort
什麼是正確的索引這裏避免臨時和文件?
UPDATE: user_sort
是我創建的索引的只是名稱和索引中的user_top_favorites
表所屬。
查詢在限制和分組之前生成多少行? – Joni
如果您沒有任何彙總功能,爲什麼使用組? – Uriil
爲什麼'user_sort'上的索引對不使用該表的查詢有影響? –