sql >> Databáze >  >> NoSQL >> MongoDB

Jak vrátím souhrn dílčích polí s filtrem na nejvyšším poli?

Můžete zkusit níže agregaci:

ChoreChart.aggregate([
    { "$match": { "affiliation": affiliation, "year": week.year, "weekNumber": week.number } },
    {
        $addFields: {
            chart: {
                $filter: {
                    input: "$chart",
                    cond: { $eq: [ "$$this.ordinal", 2 ] }
                }
            }
        }
    }
])

$addFields nahradí stávající pole a $filter vnitřní pole filtrů. Navíc od vašeho ordinal je číslo, které také musíte ve svém dotazu zadat číslo, nikoli řetězec.




  1. java.lang.IllegalArgumentException:Očekávaný jedinečný výsledek nebo null, ale dostal více než jeden! - Spring Data Mongo

  2. Redis SCAN odpovídající

  3. Co by mohlo způsobit chybu zničení topologie při volání db.destroyDatabase s node.js mongodb native?

  4. jak uložit obrázek do redis pomocí pythonu / PIL