MongoDB内 、インデックスプレフィックスを使用してデータベースをクエリできます。他には何も使えません。クエリにキープレフィックスが含まれていない場合、インデックスは使用されません 。
提案されたインデックスを想定する{'key1':1,'key2':1}
:
インデックスを使用するクエリ:
-
db.some.find({key1 : {$gt : 100}})
-プレフィックスを使用します -
db.some.find({key1 : {$gt : 100}, key2 : {$lt : 30}})
-完全なインデックスを使用します -
db.some.find({key3 : 'test'}).sort({key1 : 1})
-並べ替えにプレフィックスを使用(方向一致)
インデックスを使用しないクエリ:
-
db.some.find({key2 : {$gt : 100}})
-インデックスの順序が重要です-key2はプレフィックスではありません -
db.some.find({key3 : 'test'}).sort({key1 : -1})
-複数列のインデックスではインデックスの方向が重要です -
db.some.find({key3 : 'test'}).sort({key2 : 1})
-プレフィックスではありません