MongoDB查找特定记录的页码

时间:2014-07-15 17:22:32

标签: mongodb pagination

我在MongoDB中有一个分页记录,我想查找一个特定记录,并找出它所依赖的页面。让我们说一下电话簿中 name = Foobar 的位置,每页的计数是1000条记录。

这是solved with MySQL,正确的答案依赖于以下逻辑:

  1. 获取name < $searchName
  2. 的记录总数
  3. 然后除以每页的记录数。
  4. 据我所知,MongoDB不支持在字符串中使用lessthan,所以我不能做类似的事情:

    find({ 'name': { $lt : 'Foobar' } }).count();
    

    如何使用Mongo做类似于MySql的回答?

1 个答案:

答案 0 :(得分:1)

MongoDB确实支持将字符串与$lt和其他比较运算符进行比较。请注意,语言环境有一些限制,因为它使用UTF-8表示法比较字符串,但它在POSIX语言环境中工作正常。

您应该查看this video以详细了解其工作原理。

所以是的,您应该可以运行如下查询:

db.collection.find({ "name" : { $lt : "Foobar" }}).count();

然后你可以按照你在帖子中描述的逻辑。

PS。请注意,您有一个额外的左括号,并且在查询中缺少结束括号。