次の構造を持つテーブルから N 個の最後の一意のキーワードを選択しようとしています。
id | keyword | digit
1 | TEXT1 | 123
2 | TEXT2 | 125
...
3 | TEXT3 | 123
クエリを使用:
SELECT id, keyword FROM table
WHERE digit = 123
AND id IN
(SELECT MAX(id) FROM table GROUP by keyword)
ORDER BY id DESC LIMIT 10
制限が 10 から 20 の場合、1 秒未満かかりますが、制限が 50 から始まる場合、クエリ時間は 3 秒以上から始まります。
副選択は悪です。そのようなクエリを高速化できるかどうか