このバージョンのドキュメントはアーカイブされており、サポートされなくなりました。6.0 配置をアップグレードするには、 MongoDB 7.0 のアップグレード手順 を参照してください。
定義
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 } )
Tip
PlanCache.listQueryShapes()