PlanCache.clientPlansByQuery()
定義
PlanCache.clearPlansByQuery( <query>, <projection>, <sort> )
指定されたクエリシェイプのキャッシュされたクエリプランをクリアします。
重要
mongosh メソッド
このページでは、
mongosh
メソッドについて説明します。ただし、データベースコマンドや Node.js などの言語固有のドライバーのドキュメントには該当しません。データベースコマンドについては、
planCacheClear
コマンドを参照してください。MongoDB API ドライバーについては、各言語の MongoDB ドライバー ドキュメントを参照してください。
メソッドは、特定のコレクションの
plan cache object
からのみ使用できます。すなわちdb.collection.getPlanCache().clearPlansByQuery( <query>, <projection>, <sort> ) PlanCache.clearPlansByQuery()
メソッドは次のパラメータを受け入れます。Parameterタイプ説明query
ドキュメントクエリシェイプのクエリ述語。 フィールド名を含む述語の構造のみがシェイプにとって重要です。クエリ述部の値は重要ではない。projection
ドキュメント任意。 クエリシェイプに関連付けられたプロジェクション。sort
パラメータを指定する場合は必須です。sort
ドキュメントキャッシュされたクエリプランが存在するクエリシェイプを確認するには、「 クエリシェイプを一覧表示する 」を参照してください。
必要なアクセス権
authorization
で実行されているシステムでは、ユーザーにplanCacheWrite
アクションを含むアクセス権が必要です。
例
コレクションorders
が次のクエリシェイプを持つ場合:
{ "query" : { "qty" : { "$gt" : 10 } }, "sort" : { "ord_date" : 1 }, "projection" : { }, "queryHash" : "9AAD95BE" }
次の操作により、シェイプに対してキャッシュされたクエリプランが削除されます。
db.orders.getPlanCache().clearPlansByQuery( { "qty" : { "$gt" : 10 } }, { }, { "ord_date" : 1 } )