私は自分のデータベースに次のようなクエリを持っています:
SELECT * FROM expenses WHERE user_id = ? AND dated_on = ?
user_id列と列の両方でテーブルにインデックスを追加しましたdated_on。を使用してインデックスを検査すると、値が 1 のSHOW INDEXES FROM expenses行と値が 2 の行の 2 つの行があります。seq_in_indexseq_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 はインデックスの使用とパフォーマンスにどのように影響しますか?