(これはRailsアプリにあります)
2 つのテーブルが与えられた場合:
items
id, int(11), primary key
name, varchar(30)
choices
id, int(11), primary key
item_id, int(11), foreign key
identifier, varchar(5)
name, varchar(30)
選択肢に対するクエリの大部分は、次のようなものです。
SELECT identifier, name FROM choices WHERE item_id = n ORDER BY identifier;
インデックスがパフォーマンスの並べ替えに役立つことに全員が同意すると仮定しましょう (私は皆そうではないことを知っています。それは問題ありませんが、この質問では仮定しましょう)。
検索と並べ替えの両方の利点を得るために、選択肢にインデックスを付ける最良の方法は何ですか?
- item_idとidentifierのそれぞれに 1 つずつ、2 つのインデックス
また
- item_id、識別子の 1 つのインデックス