[英]Group by Field MongoDB Java Driver 3+
I would like to apply a group operation on my entire Document using MongoDB Java Driver 3.0 我想使用MongoDB Java Driver 3.0对我的整个文档进行组操作
My query is something like: 我的查询是这样的:
db.coll.group( { key: {"field": 1}, cond: {}, reduce: function(curr, result){}, initial: {} } )
Results are: 结果是:
{
"field" : "A61038968K16X275KNWCEIHr"
},
{
"field" : "AH1038968716P3210C6NiQpD"
},
{
"field" : "AV1038968F16Q321DCxY7T6w"
},
{
"field" : "A71038968K165321PLiEhbGJ"
},
{
"field" : "AY1038968N16w321a537co1U"
},
{
"field" : "AJ1038968E16S3212MJpeNNV"
}
I'm trying things in Java like : collection.aggregate(group("field"))
but it doesn't work. 我正在尝试使用Java进行类似的操作:
collection.aggregate(group("field"))
但是它不起作用。 Sorry if it's easy but I can't find anything googling. 抱歉,很简单,但是我找不到谷歌搜索。
Thanks! 谢谢!
So, what I was looking for was a 'distinct' method. 因此,我一直在寻找一种“与众不同”的方法。
My solution was: 我的解决方案是:
collection.distinct(<string field>, <query>, <result class>);
For example, in my case, my result class is a String. 例如,就我而言,我的结果类是String。
collection.distinct("field_grouping",gte("field_query", 1000),String.class);
After that you can iterate your results and do whatever you want: 之后,您可以迭代结果并执行所需的任何操作:
Iterator<String> iterator = collection.distinct("field_grouping",gte("field_query", 1000),String.class).iterator();
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.