Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/tfs/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在mongodb java驱动程序中获取不同字段的计数_Mongodb_Count - Fatal编程技术网

如何在mongodb java驱动程序中获取不同字段的计数

如何在mongodb java驱动程序中获取不同字段的计数,mongodb,count,Mongodb,Count,我知道我可以通过如下查询得到一个不同的列表: db.collections.distinct("fieldName") 并使用 db.collections.distinct("fieldName").length 但是除了在聚合查询中,是否有其他方法可以在mongodb java驱动程序中获取长度 或将实施以下措施: collection.distinct("fieldName", condition).size() 效率太低?对代码稍加修改: db.collections.dist

我知道我可以通过如下查询得到一个不同的列表:

db.collections.distinct("fieldName")
并使用

db.collections.distinct("fieldName").length
但是除了在聚合查询中,是否有其他方法可以在mongodb java驱动程序中获取
长度

或将实施以下措施:

 collection.distinct("fieldName", condition).size() 

效率太低?

对代码稍加修改:

db.collections.distinct("fieldName").length

很抱歉,我只是在mongodb客户端shell中找到了这样做的答案(尽管您发布了答案,谢谢),但我仍然不知道如何使用mongodb java-driver@armnotstrongmongodb似乎不支持使用distinct命令进行服务器端排序。因此,聚合查询将是您唯一的途径。就性能而言,在客户端排序要好得多。感谢您的回复,我只是发现我可能可以使用
list.size()
实现这一点,因为
distinct
返回了一个列表,但这是否会导致效率低下?@armnotstrong,也许可以检查一下:您使用了哪个
mongojava驱动程序
?@yogesh是官方的
mongojava驱动程序
2.12.0版