mysql の並べ替えではインデックス ソートが使用されないのはなぜですか?
PHP中文网
PHP中文网 2017-05-18 10:44:38
0
3
1004

city_id (主キーインデックス) による順序

country_id で注文 (インデックスなし!!!)

PHP中文网
PHP中文网

认证0级讲师

全員に返信(3)
漂亮男人

city_id が主キー、country_id が複合主キーです。

いいねを押す +0
刘奇

に変更されました リーリー

これで、SELECT中查询了索引建以外的列,那么ORDER BY就不会使用索引了。你可以用FORCE INDEX でインデックスの使用を強制することになります。

もう一つのポイントは、いわゆるカバリングインデックスです。カバリング インデックスの定義は次のとおりです。MySQL は、結果を取得するためにインデックスに基づいてファイルを再度クエリすることなく、インデックスに基づいて select フィールドを返すことができます。

を使用すると何が起こりますか。 select *时,你没有强制指定索引,那么mysql为了得到你的查询的字段而查询文件,然后再进行排序操作,这就没有用到覆盖索引。而你使用了force index就会强制使用覆盖索引,这样就不会出现filesort

いいねを押す +0
Ty80

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート