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
/ /
Búsqueda de texto
/ / /

Operadores de búsqueda de texto (Implementaciones autogestionadas)

Nota

Esta página describe las funciones de consulta de texto para implementaciones autogestionadas (no Atlas). Para los datos alojados en MongoDB Atlas, MongoDB ofrece una solución mejorada de consulta de texto completo, Atlas Search, y una solución de búsqueda vectorial, Atlas Vector Search.

Usa el $text operador del query para realizar búsquedas de texto en una colección con un índice de texto.

$text tokeniza la cadena de búsqueda utilizando espacios en blanco y la mayoría de los signos de puntuación como delimitadores, y realiza un OR lógico de todos esos tokens en la cadena de búsqueda.

Por ejemplo, podrías usar la siguiente query para encontrar todas las tiendas que contengan cualquier término de la lista "café", "tienda" y "java" en la stores colección:

db.stores.find( { $text: { $search: "java coffee shop" } } )

Usa el operador del query $meta para obtener y ordenar por la puntuación de relevancia de cada documento coincidente. Por ejemplo, para ordenar una lista de cafeterías en función de relevancia, ejecuta lo siguiente:

db.stores.find(
{ $text: { $search: "coffee shop cake" } },
{ score: { $meta: "textScore" } }
).sort( { score: { $meta: "textScore" } } )

Para obtener más información sobre los operadores y, incluidas las restricciones y el comportamiento,$text $meta consulte:

Cuando trabajes con pipeline de agregación, utiliza $match con una expresión $text para ejecutar una consulta de búsqueda de texto. Para ordenar los resultados según el puntaje de relevancia, use el $meta operador de agregación en la etapa $sort [1].

Para más información y ejemplos de $text en Operaciones de agregación pipelines, consulta $text en el pipeline de agregación en implementaciones autogestionadas.

Para los datos alojados en MongoDB Atlas, Atlas Search proporciona la etapa de agregación $search para realizar una búsqueda de texto completo en sus colecciones.

[1] El comportamiento y los requisitos del operador $meta de proyección <a class=\" \" href=\" \"> es diferente al del operador de agregación $meta <a class=\" \" href=\" \">. Para obtener detalles sobre el $meta operador de agregación <a class=\" \" href=\" \">, consulte la página de $meta referencia del operador de agregación <a class=\" \" href=\" \">.

Volver

Búsqueda de texto

En esta página