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

Как да поддържам документи в агрегация с $unwind

Нямате нужда от $unwind изобщо. Обикновено $match в тръбопровод е достатъчно:

pipeline = [
    {
        "$match" : {
            "$or" : [
                {
                    "goes.fridays.fr" : 700
                },
                {
                    "goes.special" : {
                        "$elemMatch" : {
                            "date" : "2010-01-01",
                            "fr" : 1000
                        }
                    }
                }
            ]
        }
    }
]

db.students.aggregate(pipeline)

Може да се направи лесно дори без рамка за агрегиране.

query = {
    "$or" : [
        {
            "goes.fridays.fr" : 700
        },
        {
            "goes.special" : {
                "$elemMatch" : {
                    "date" : "2010-01-01",
                    "fr" : 1000
                }
            }
        }
    ]
}

db.students.find(query)



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Как да свържете клиенти на mongodb към локален Meteor MongoDB

  2. Как да получите максимална и минимална стойност в MongoDB въз основа на конкретен ключ?

  3. 5 начина за избор на редове с минимална стойност за тяхната група в SQL

  4. BsonValue и персонализирани класове в MongoDB C# драйвер

  5. Защо PyMongo кодира uuid.uuid1() като BSON::Binary?