我怀疑MongoDB目前是否可行,但我想知道是否可以 查询的结果集可以按其中的值数组进行排序 结果集。这类似于MySQL的“ORDER BY FIELD” 功能。这个MySQL功能的一个简单示例: http://pastebin.com/qtL1vKcM
这是我正在尝试完成的类似示例 mongodb console:http://pastebin.com/LuKqA6b1
我知道大多数人会建议:在客户端进行排序 方/应用程序代码。但是,在我的情况下,这是不可行的。我 对结果集进行分页(即skip()/ limit()组合)。排序 应用程序代码需要选择整个集合 进入我的应用程序代码,未经过滤,对其进行排序,然后应用 分页。
我需要在应用skip()/ limit()之前对结果集进行排序。
我认为这个功能非常实用。就我而言, 我正在尝试将Sphinx text search功能集成到 MongoDB,同时通过匹配相关性维护Sphinx的排序。它 是这样的:
有没有切实可行的方法来实现这个目标?
答案 0 :(得分:1)
这是不可能的,但我猜你可以从sphinx返回分页结果,使用$in
运算符从mongodb加载适当的数据,然后根据sphinx id的排序对客户端分页结果进行排序。似乎这应该适合你。
Mongodb家伙肯定会考虑“真正的”全文搜索支持(甚至有计划的jira功能),我想它很快就会出现(可能在今年)。
答案 1 :(得分:0)
目前这是不可能的,也没有直接的解决方法。