我有一个包含数字字段X
的文档数据库。我正在尝试编写一个查询,该查询返回指定数量的文档,其X
字段最接近给定值Y
。
e.g。
X
文档列表为[1, 4, 9, 2, 5, 4, 6, 8, 9, 10, 23, 2]
Y
为5,指定的返回结果数为6
会返回[4, 4, 5, 6, 8, 9]
我最初的想法是获取所有文档,按X
对结果集进行排序,并修剪Y
周围的多余条目。但是,我不确定如何在Mongo中实现这种“修剪”功能。
如何使用执行此操作的Java驱动程序来创建查询?
答案 0 :(得分:1)
MongoDB没有任何帮助你的地方。您必须在应用程序级别上实现这样的过滤,或者可能使用Map-Reduce,但标准的客户端查询API在这里没有帮助(不太可能使用SQL实现类似的东西)。