以下のように言及されているmongoコレクションがあると仮定しましょう
db.test.findOne() { "_id" : ObjectId("52d0313dc62b629cfabe22ff"), "a" : 1, "b" : 1, "c" : 1 }
このコレクションには 100 万件以上のレコードがあります。
ここで、フィールド "a" が 1000 より大きく、"b" フィールドが 9000 より小さい条件を持つレコードを見つけたい場合、mongo クエリは次のようになります。
db.test.find({'a':{'$gt':1000}, 'b':{'$lt': 9000}}, {'a':1, 'c':1}) と上記の検索を高速化します。「a」および「b」フィールドに複合インデックスを既に適用しています。上記のクエリで使用されています..
ここで、お気づきのように、すべてのコレクションには、主キーの「_ id _」フィールドにデフォルトのインデックスが付属しています。
上記のmongoクエリはデフォルトのインデックス「_ id _」を使用していますか? はいの場合、どのように?そうでない場合は、なぜですか?
ありがとうございます