我正在查询靠近某个位置($near
和$maxDistance
)并且属于日期范围的文档($or
,其中包含3组{{1} } / $gt
与日期/时间表相关的条件)。
我发现$lt
总是返回100,即使有100个或更多结果,无论$cursor->count()
如何。
似乎limit()
工作正常,允许我跳过超过100个结果(当超过100个时),但令我困扰的是$cursor->skip()->limit()
总是返回100并且似乎没有确定完整计数的方法(除了分页,直到没有更多结果)。
我找到map reduce not working correctly with geospatial的引用,而mongodb文档引用的默认count()
为100。
上面的查询找到最接近的点(50,50)并返回它们按距离排序(不需要额外的排序参数)。使用limit()指定要返回的最大点数(如果未指定,则应用默认限制100):
这是一个已知问题吗?我正在使用PHP驱动程序。
答案 0 :(得分:0)
等待增加$或$并支持geo-spital一年:
Estimate: Medium ( < 1 week)
Fix Version/s: planned but not scheduled
https://jira.mongodb.org/browse/SERVER-3984
__ 也许他们支持2014年到期;) __
http://pastebin.com/raw.php?i=FD3xe6Jt
http://www.zopyx.de/blog/goodbye-mongodb
http://blog.engineering.kiip.me/post/20988881092/a-year-with-mongodb