Join us at MongoDB.local London on 7 May to unlock new possibilities for your data. Use WEB50 to save 50%.
Register now >
Docs Menu
Docs Home
/ /

cursor.hint() (método mongosh)

cursor.hint(index)

Importante

Método mongosh

Esta página documenta a mongosh Método. Esta no es la documentación de un controlador específico del lenguaje, como Node.js.

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

Llama a este método en una query para anular la selección de índice por defecto de MongoDB y proceso de optimización de query. Utilice db.collection.getIndexes() para devolver la lista de índices actuales de una colección.

El método cursor.hint() tiene el siguiente parámetro:

Parameter
Tipo
Descripción

index

string o documento

El índice para "indicar" o forzar que MongoDB utilice al realizar la query. Especifique el índice ya sea por el nombre del índice o mediante el documento de especificación del índice.

También puede especificar { $natural : 1 } para forzar la consulta a realizar un escaneo de recopilación hacia adelante, o { $natural : -1 } para un escaneo de recopilación hacia atrás.

Este método está disponible en implementaciones alojadas en los siguientes entornos:

  • MongoDB Atlas: El servicio totalmente gestionado para implementaciones de MongoDB en la nube

Nota

Este comando es compatible con todos los clústeres de MongoDB Atlas. Para obtener información sobre el soporte de Atlas para todos los comandos, consulte Comandos no compatibles.

  • MongoDB Enterprise: La versión basada en suscripción y autogestionada de MongoDB

  • MongoDB Community: La versión de MongoDB con código fuente disponible, de uso gratuito y autogestionada.

  • Cuando existe un filtro de índice para la forma del query, MongoDB ignora el hint().

  • Si una query incluye una expresión $text, no se puede usar hint() para especificar qué índice usar para la query.

  • Si utiliza hint() en un índice oculto o en un índice que no existe, la operación devuelve un error.

  • En colecciones de series temporales, solo puedes especificar pistas utilizando el nombre del índice, no el patrón de clave del índice.

  • La configuración de query tiene mayor precedencia que las sugerencias de índices. MongoDB ignora las sugerencias de índices que se pasan como campos de comandos cuando una configuración de query coincidente contiene sugerencias de índices. Las sugerencias de índices no afectan la forma del query. Para obtener más información sobre las sugerencias y la configuración de la query, consulte Sintaxis de configuración de query.

$natural

Utilice $natural con cursor.hint() para realizar un escaneo de colección para devolver los documentos en orden natural.

Para el uso, vea Forzar escaneos de colección.

Nota

Antes de MongoDB,7.0 $natural aceptaba valores de tipo incorrectos,0 NaNcomo,, "X"-0.01 y. Después de MongoDB.,7 0si se pasa cualquier valor distinto de 1 y -1 $naturala, MongoDB devuelve un error.

El siguiente ejemplo devuelve todos los documentos en la colección llamada users usando el índice en el campo age.

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

También puede especificar el índice utilizando el nombre del índice:

db.users.find().hint( "age_1" )

Puedes especificar { $natural : 1 } para que la query realice un escaneo de colección hacia adelante:

db.users.find().hint( { $natural : 1 } )

También puedes especificar { $natural : -1 } para forzar que la query realice un escaneo inverso de la colección:

db.users.find().hint( { $natural : -1 } )

Tip

Volver

cursor.hasNext

En esta página