通过MongoDB计算DbSet中的对象数

时间:2014-07-07 15:39:09

标签: mongodb opa

我有一个包含大约10k文件的files DbSet。

有没有办法在mongodb高级API的帮助下检索files的计数?

其实我正在做

Iter.count(DbSet.iterator(/user))

但需要大约4或5秒才能获得计数.....

直接从MongoDB检索此计数的任何方法?

2 个答案:

答案 0 :(得分:1)

我担心count未在高级数据库API中实现:(但您可以使用低级MongoCommands.count

答案 1 :(得分:0)

再次感谢Marcin,它使用了低级API!

以下是使用OCAML语法的示例:

我想计算集合files(数据库files)中owner_id字段设置为96171629325147的所有对象。

my_db = MongoConnection.openfatal("default");

c = MongoCommands.count(my_db, "files", "files", some(Bson.opa2doc({owner_id=96171629325147})));

match c with
| {success=value} -> Resource.raw_text("DONE MO'FO ! Found {value} elements")
| {failure=e} -> Resource.raw_text("IT FAILED !!! WHY ??? {MongoCommon.string_of_failure(e)}")