我有一个文档数据库,所有文档都包含一个数值字段X。我正在尝试编写一个查询,该查询返回指定数量的文档,这些文档的X字段最接近给定值Y。
例如,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驱动程序来创建查询?
发布于 2011-07-13 01:24:59
MongoDB没有什么可以帮到你的。您必须在应用程序级别实现这样的过滤,或者可能使用Map-Reduce,但是标准的客户端查询API在这方面对您没有帮助(您不太可能使用SQL实现类似的功能)。
https://stackoverflow.com/questions/6667989
复制相似问题