Mongodb 2.6 - 如何知道文本搜索结果的数量?

时间:2015-01-10 16:01:54

标签: mongodb mongodb-query nosql

我已经看到了这个问题而且已经过时了。这对于使用新的$ text运算符的mongodb 2.6有什么用?

我们能算得上吗?我想知道解决方案,性能等。

get a count on a text search mongodb

1 个答案:

答案 0 :(得分:1)

mongodb v2.6中,您可以在汇总管道中使用$text运算符。

var term = "searchTerm"

var result = db.collection.aggregate([
{$match:{"$text":{$search:term}}},
{$group:{"_id":null,"count":{$sum:1}}}
]).map(function(i){return {"count":i.count};});

result[0].count将为您提供匹配的文档数。

如果您只是想要计数,那么您可以使用count()函数。

db.collection.count({$text:{$search:term}});

您可以阅读here有关如何将其与各种查询运算符及其运行方式一起使用的更多信息。