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

Pymongo агрегиране - предаване на python списък за агрегиране

Можете да опитате следното:

key_list =  ["animal.dog", "animal.dog.tail", "animal.cat", "tree", "fruits", "timestamp"]
match = { "$match": { "cid": ObjectId("57fe39972b8dbc1387b20913") } }
project = { "$project": {} }
group = { "$group": {} }

for item in key_list:
    if item == "timestamp":
        project["$project"]["day"] = { "$substr": ["$"+item,  0, 10] }
        group["$group"]["_id"] = "$day"
        break
    sum = {"$sum": ""}
    sum["$sum"] = "$"+item.replace(".", "_")
    project["$project"][item.replace(".", "_")] = "$"+item
    group["$group"][item.replace(".", "_")] = sum

pipeline = [match, project, group]



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Как да премахнете колона от дъщерна колекция

  2. Spring Data Mongodb:Актуализиране на документи

  3. Вземете конкретен елемент от масива на mongoDB

  4. Как да получа данни от масив в mongoose?

  5. Актуализирайте вложен обект в MongoDB, ако съществува, в противен случай го добавете