私はMySQLとInnoDBを使用しています。ここでWHERE句とORDER BY句を持つINNER JOINに最適なインデックスは何ですか?
SELECT id FROM
Foo
INNER JOIN
Bar
ON Foo.id = Bar.fooId
WHERE Foo.column1 = N
ORDER BY Foo.column2 DESC LIMIT 100
、Foo.id
が主キーであるとBar.fooId
がFKである:私は次のクエリをしたと仮定し 。
Foo
とBar
テーブルに追加すべき最良のインデックスは何ですか?
現在、(Foo.column1, Foo.column2)
のインデックスはFoo
テーブルにあります。このコンポジットインデックスにもFoo.id
を追加する必要がありますか?注文は何ですか?
このテーマをカバーする正式な参照が見つかりませんでした。
Foo.idは主キー、Bar.fooIdは外部キーです。右? –
@DipanwitaKunduはい。編集されました。 – Mowji
複合インデックスとしてfoo.idを追加する必要はありません。これで十分です。 –