Tengo una colección con datos que se parece a esto
{ "part": [ { "a": "1", "b": "a" }, { "a": "23", "b": "b" }, { "a": "4", "b": "c" }, ] } Lo que me gustaría es una forma de buscar documentos donde la unión de todas las partes a igual a la búsqueda que estoy buscando.
por ejemplo, 1234 debería coincidir con el documento anterior, pero 124 no.
¿Es esto posible con MongoDB?
Puedes hacerlo con el marco de agregación:
a matriz part son iguales a la cadena de entrada.a matriz part para cada documento. db.collection.aggregate([ { "$match": { "$expr": { "$eq": [ "1234", { "$reduce": { "input": "$part", "initialValue": "", "in": { "$concat": [ "$$value", "$$this.a" ] } } } ] } } } ])