Estoy tratando de hacer consultas a mi base de datos, basada en mongo, pero necesito que sean parciales, digamos, necesito que la base de datos encuentre resultados cuando ingreso algo en un cuadro de entrada. Por ejemplo, supongamos que en mi base de datos hay muchos usuarios con diferentes nombres "Paul, Patrick, Pablo, Pantaleon, etc", necesito que Mongo haga una búsqueda y me arroje los resultados cuando en la entrada pongo "pa ". Honestamente, no conozco la sintaxis para hacerlo, porque el modelo. Buscar ({nombre:""}) solo obtiene los resultados cuando ingresa el nombre completo ...
Agradecería mucho si alguien me puede ayudar con esta duda! ¡¡¡Gracias!!!
Recomendaré el operador $regex:
qué es $regex: proporciona capacidades de expresión regular para cadenas de coincidencia de patrones en consultas. MongoDB utiliza expresiones regulares compatibles con Perl (es decir, "PCRE") versión 8.42 con compatibilidad con UTF-8.
{name:{$regex: "/pa/",$options:'i'}}El parámetro $opciones con 'I' (que significa insensibilidad a mayúsculas y minúsculas) especifica que queremos realizar la búsqueda sin importar si encontramos las letras 'Gu' en minúsculas o mayúsculas.
para saber más de esto https://www.mongodb.com/docs/manual/reference/operator/query/regex/
Como soy capaz de conseguir su punto.
Puedes probar esto -
db.userCollection.find( {name: {$regex: /^pa/}} ) - will match 'Paul', 'Patrick', 'Pablo', 'Pantaleon', but not 'john', 'prince'.Para comprender en detalle, puede seguir los documentos de mongodb