Ich habe ein Problem mit einer Mongodb-Abfrage. derzeit
Ich führe
collection.find({ "history.data": { "key": "paymentStatus", "value": {
$in: ["fail1", "fail2", "fail3", "fail4", "fail5", "fail6", "fail7",
"blocked"] } } })
aber es zurückgibt mir nicht die gewünschten Objekte, in der Tat ist es ein leeres Array zurückgibt.
Die Struktur des Objekts ist wie folgt:
{history: {time: ... , data: [ {key: "paymentStatus", value: "fail1"}, ... ] }}
Ist dies die richtige Syntax für eine verschachtelte Abfrage mongodb zu finden?
Sie verwenden 'elemMatch' zum Vergleichen von Arrayfeldern in mehreren Abfragekriterien. Etwas wie 'collection.find ({" history.data ": {$ elemMatch: {" key ":" paymentStatus "," Wert ": {$ in: [" fail1 "," fail2 "," fail3 "," fail4 "," fail5 "," fail6 "," fail7 "," blockiert "}}}})' – Veeram
vielen Dank, mein Herr –