私は自分のデータベースに次のようなクエリを持っています:
SELECT * FROM expenses WHERE user_id = ? AND dated_on = ?
user_id
列と列の両方でテーブルにインデックスを追加しましたdated_on
。を使用してインデックスを検査すると、値が 1 のSHOW INDEXES FROM expenses
行と値が 2 の行の 2 つの行があります。seq_in_index
seq_in_index
私の質問は、2 つの WHERE 句の 1 つだけを使用するクエリを送信した場合です。
SELECT * FROM expenses WHERE user_id = ?
user_id
列にのみインデックスを付ける別のインデックスを作成する利点はありますか、または上記のuser_id
/dated_on
インデックスは同様に効率的に使用されますか?
最後に、クエリを使用する場合はどうですか:
SELECT * FROM expenses WHERE dated_on = ?
seq_in_index
この状況で、値 2 はインデックスの使用とパフォーマンスにどのように影響しますか?