0
我有一个看起来是这样的文件:蒙戈 - 鲜明的匹配整个阵列
{"arr":["a","b","c"]},
{"arr":["a","b","x"]},
{"arr":["c","b","a"]},
{"arr":["a","b","c"]}
我想不过来调用不同的让所有的独特阵列,查询数组默认匹配的元素,这意味着这样的:
db.getCollection("mycoll").distinct("arr",{});
回报:
["a","b","c","x"]
代替
[["a","b","c"],
["a","b","x"],
["c","b","a"]]
如何查询不同的数组?或者,我很想得到每个结果的出现次数过多:
{["a","b","c"] : 2,
["a","b","x"] : 1,
["c","b","a"] : 1}
在聚合管道中使用'$ sum'在数组上使用'$ group'。就像'db.collectionname.aggregate({$ group:{_ id:“$ arr”,count:{$ sum:1}}})' – Veeram
这对我有效:'db.mycoll.aggregate({$ group: {_id: “$ ARR”,计数:{$总和:1}}})'。谢谢!如果你做出回答,我会接受它。 – Porthos3
[Group by sum mongodb]可能重复(https://stackoverflow.com/questions/17909694/group-by-sum-mongodb) – Veeram