Docs Menu
Docs Home
/ /

PlanCache.clearPlansByQuery() (método mongosh)

PlanCache.clearPlansByQuery( <query>, <projection>, <sort> )

Borra los planes del query en caché para el especificado forma del query.

Importante

Método mongosh

Esta página documenta a Método mongosh. Esta no es la documentación de comandos de base de datos ni de controladores específicos del lenguaje, como Node.js.

Para el comando de base de datos, consulta el comando planCacheClear.

Para los drivers de API de MongoDB, consulte la documentación del driver de MongoDB específica del lenguaje.

El método solo está disponible desde el plan cache object de una colección específica; es decir.

db.collection.getPlanCache().clearPlansByQuery( <query>, <projection>, <sort>, <collation> )

El método PlanCache.clearPlansByQuery() acepta los siguientes parámetros:

Parameter
Tipo
Descripción

query

Documento

El predicado de consulta de la forma del query. Solo la estructura del predicado, incluidos los nombres de los campos, es significativa para la forma; los valores en el predicado de consulta no son significativos.

projection

Documento

opcional. La proyección asociada con la forma del query. Obligatorio si se especifica el parámetro sort.

sort

Documento

opcional. La ordenación asociada con la forma del query.

collation

Documento

Opcional. Especifica la intercalación que se debe utilizar para la operación.

La intercalación permite a los usuarios especificar reglas propias del lenguaje para la comparación de strings, como reglas para el uso de mayúsculas y minúsculas y marcas de acento.

La opción de intercalación tiene la siguiente sintaxis:

collation: {
locale: <string>,
caseLevel: <boolean>,
caseFirst: <string>,
strength: <int>,
numericOrdering: <boolean>,
alternate: <string>,
maxVariable: <string>,
backwards: <boolean>
}

Al especificar la intercalación, el campo locale es obligatorio; todos los demás campos de intercalación son opcionales. Para las descripciones de los campos, consulta Documento de intercalación.

Si no se especifica la intercalación, pero la colección tiene una intercalación por defecto (ver db.createCollection()), la operación utiliza la intercalación especificada para la colección.

Si no se especifica ninguna intercalación para la colección o para las operaciones, MongoDB utiliza la comparación binaria simple usada en versiones anteriores para las comparaciones de strings.

No puedes especificar varias intercalaciones para una operación. Por ejemplo, no puedes especificar diferentes intercalaciones por campo, o si realizas una búsqueda con un ordenamiento, no puedes usar una intercalación para la búsqueda y otra para el ordenamiento.

Para ver las formas del query para las que existen planes del query en caché, consulta Ejemplos.

En los sistemas que funcionan con authorization, un usuario debe tener acceso que incluya la acción planCacheWrite.

Si una colección orders tiene la siguiente forma del query:

{
"query" : { "qty" : { "$gt" : 10 } },
"sort" : { "ord_date" : 1 },
"collation" : { locale : "fr" },
"projection" : { },
"queryHash" : "9AAD95BE"
}

La siguiente operación remueve el plan del query almacenado en caché para la forma:

db.orders.getPlanCache().clearPlansByQuery(
{ "qty" : { "$gt" : 10 } },
{ },
{ "ord_date" : 1 },
{ locale: "fr" }
)

Tip

Volver

PlanCache.clear

En esta página