计数pymongo中的所有数组

时间:2018-07-18 22:52:23

标签: python pymongo

我需要您的帮助才能计算我所有“文档”文档中的所有数组。

对此示例进行采样,我有4个具有不同数组列表的文档:

[{
    "uid": "111",
    "data": [{
        "eid": "111a",
        "ori": ""
    },
    {
        "eid": "111b",
        "ori": ""       
    }]
},
{
    "uid": "222",
    "data": [{
        "eid": "222a",
        "ori": ""
    }]
},
{
    "uid": "333",
    "data": [{
        "eid": "333a",
        "ori": ""
    }]
},
{
    "uid": "444",
    "data": [{
        "eid": "444a",
        "ori": ""
    },
    {
        "eid": "444b",
        "ori": ""       
    }]
}]

我如何计算所有文档中的总数据?在这个样本中,ori为6。已经:

db.doc.find({"data.ori": ""}).count()

尝试使用stackoverflow中的许多方法,但不要运气..如果您有任何想法或为此编写教程,请告诉我并谢谢。

2 个答案:

答案 0 :(得分:1)

Pymongo $count(aggregation)可能help

docs = db.doc.aggregate( [
   { $group: { _id: null, myCount: { $sum: 1 } } },
   { $project: { _id: 0 } }
] )

该操作返回以下结果:

{
    "myCount": 4
}

答案 1 :(得分:0)

我假设每个字典都保存在列表中,从而整理了您的输入,

<script src="https://unpkg.com/vue"></script>

<div id="app">
  <span @click="fliphw(0)">click to flip</span>
  
  <div>
   {{ hwshow }}
  </div>
  
  <ul>
     <li v-show="hwshow[0]">foo bar</li>
  </ul>
</div>