C# 如何在Lucene.Net中查询最大字段值?

C# 如何在Lucene.Net中查询最大字段值?,c#,.net,lucene.net,C#,.net,Lucene.net,我们希望能够返回具有特定字段最大值的单个文档。一个典型的例子是 max(date_time_field:*) 它返回索引中的最新文档 Lucene.Net中是否支持类似的内容?我不确定您是如何查询索引的,但您可以按相关字段排序,然后只需获取最上面的文档: var sortBy = new Sort(new SortField("date_time_field", SortField.DOUBLE, true)); var hits = ... IndexSearcher.Search(quer

我们希望能够返回具有特定字段最大值的单个文档。一个典型的例子是

max(date_time_field:*)
它返回索引中的最新文档


Lucene.Net中是否支持类似的内容?

我不确定您是如何查询索引的,但您可以按相关字段排序,然后只需获取最上面的文档:

var sortBy = new Sort(new SortField("date_time_field", SortField.DOUBLE, true));
var hits = ... IndexSearcher.Search(query, null, 1, sortBy));

...

var doc = searcher.IndexSearcher.Doc(hits.ScoreDocs[0]);

我不确定您是如何查询索引的,但您当然可以按相关字段排序,然后只需获取顶部文档:

var sortBy = new Sort(new SortField("date_time_field", SortField.DOUBLE, true));
var hits = ... IndexSearcher.Search(query, null, 1, sortBy));

...

var doc = searcher.IndexSearcher.Doc(hits.ScoreDocs[0]);

我寻找的更多的是一个返回单个文档的聚合函数,而不是返回一个已排序的批量并获取最上面的一个。。。这可能吗?我不认为你可以在LuceneI中查询聚合。我在寻找更多的聚合函数,它返回一个文档,而不是返回一个已排序的批量并获取最上面的一个。。。这可能吗?我认为你无法在Lucene中查询聚合