Docs Menu
Docs Home
/
MongoDBマニュアル
/ / /

$hint

$hint

注意

v 3.2 で廃止予定

v3.2 以降、$hint 演算子はmongosh では非推奨です。mongoshでは、代わりにcursor.hint() を使用してください。

$hint演算子は特定のドライバーで引き続き使用できる場合があります。

$hint演算子は、クエリオプティマイザがクエリを実行するために特定のインデックスを使用することを強制します。 インデックス名、またはドキュメントによってインデックスを指定します。

クエリ パフォーマンスとインデックス戦略をテストするには、 $hintを使用します。 mongoshは 演算子のヘルパー メソッドhint() $hintを提供します。

次の操作を検討してください。

db.users.find().hint( { age: 1 } )

この操作は、 ageフィールドのインデックスを使用して、 usersという名前のコレクション内のすべてのドキュメントを返します。

次のいずれかの形式を使用してヒントを指定することもできます。

db.users.find()._addSpecial( "$hint", { age : 1 } )
db.users.find( { $query: {}, $hint: { age : 1 } } )

注意

クエリで次の形式で$hintが指定されている場合:

db.users.find( { $query: {}, $hint: { age : 1 } } )

次に、 $explainオプションを含めるには、次のようにドキュメントに$explainオプションを追加する必要があります。

db.users.find( { $query: {}, $hint: { age : 1 }, $explain: 1 } )

クエリシェイプにインデックス フィルターが存在する場合、MongoDB は $hint を無視します。

戻る

$explain