MongoDB
 sql >> база данни >  >> NoSQL >> MongoDB

Как да върна съвкупност от подмасиви с филтър в най-горния масив?

Можете да опитате агрегацията по-долу:

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

$addFields замества съществуващо поле и $filter филтрира вътрешния масив. Освен това от вашия ordinal е число, което също трябва да посочите число, а не низ в заявката си.




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Статистика в реално време:MySQL(/Drizzle) или MongoDB?

  2. Работа с грешки при валидиране на Mongoose – къде и как?

  3. Заявката за дата с ISODate в mongodb изглежда не работи

  4. MongoDB безопасен ли е за нишки?

  5. Използване на метода MongoDB UpdateFirst