MySQLがインデックスを使用する方法を読んだ後、疑問が残りました。ほとんどのクエリで合計される場合に備えて、列Aと列Bをインデックスに変換することには利点がありますか?
私の質問は主に、上記のリンクにMIN関数とMAX関数、およびCOUNT()がリストされており、それらがSUM(集約関数)と同じグループに属しているためです。
http://dev.mysql.com/doc/refman/5.0/en/group-by-functions.html#function_sum
MySQLがインデックスを使用する方法を読んだ後、疑問が残りました。ほとんどのクエリで合計される場合に備えて、列Aと列Bをインデックスに変換することには利点がありますか?
私の質問は主に、上記のリンクにMIN関数とMAX関数、およびCOUNT()がリストされており、それらがSUM(集約関数)と同じグループに属しているためです。
http://dev.mysql.com/doc/refman/5.0/en/group-by-functions.html#function_sum
インデックスを使用して、ものを見つけるのに役立てます。したがって、where句、結合、およびorder /groupbyで使用する列にそれが必要です。必要な行ができたら、それはカウントと合計を開始した後、インデックスは役に立ちません。
したがって、列が選択で使用される場合:いいえ
どこでまたは参加する:はい
順序/グループ化:おそらく。
PS:テーブルのすべての行でmin()/ max()を選択する場合、インデックスを使用すると、テーブルをスキャンする必要はなく、直接見つけることができます。同じことは合計には当てはまりません。