0
我想返回在具有特定值的文档后找到的所有匹配文档。该值是唯一的。 我曾尝试使用numericfilterrange。这不是一个好的解决方案,因为字段值可能是任何顺序基于特定字段筛选lucene搜索
我想返回在具有特定值的文档后找到的所有匹配文档。该值是唯一的。 我曾尝试使用numericfilterrange。这不是一个好的解决方案,因为字段值可能是任何顺序基于特定字段筛选lucene搜索
如果我明白你需要什么,使用数字范围是正确的方法来使你想要的东西变成你想要的。为了排序的同一领域,你需要一个Sort
参数传递给你的搜索调用,这样的:
Sort sort = new Sort(new SortField("myNumericField", SortField.Type.INT));
searcher.search(query, maxDocs, sort)
我需要一定的价值已经在搜索中已经遭遇后保留所有的值。例如,所有文档在包含字段的某个文档之后,值为“5”的“id” – Neelesh
因此,具有“id> 5”的所有文档,对不对?除非我误解了你的问题,你说你已经用'NumericRangeQuery'获得了。使用相同的查询,并按照指示添加“排序”。 – femtoRgon
等待,重读,也许你正在寻求别的东西。实际上,您是否试图找到一个Document,然后返回所有在此之后写入索引的Document? Lucene文档实际上并没有一个有意义的自然顺序,只是基于DocID而不是真的足够。如果这就是你想要的,你应该有一个与之相关的领域。进入日期可能有意义。 – femtoRgon