我试图在没有任何运气的情况下对 Lucene .NET 2.9.2 索引运行查询:
我的索引包含文档,其中一些包含名为“MyNum”的数字字段,而有些则不是。该字段已编入索引。
我正在尝试计算包含该字段的文档总数,无论字段值如何。
有人可以帮我吗?
我试图在没有任何运气的情况下对 Lucene .NET 2.9.2 索引运行查询:
我的索引包含文档,其中一些包含名为“MyNum”的数字字段,而有些则不是。该字段已编入索引。
我正在尝试计算包含该字段的文档总数,无论字段值如何。
有人可以帮我吗?
您可以使用通配符查询来检索具有特定字段的所有文档。只需提供 * 作为值(这只是常规通配符)。这是示例代码:
IndexSearcher searcher = new IndexSearcher(reader);
TopDocs docs = searcher.Search(new WildcardQuery(new Term("MyNum", "*")), int.MaxValue);
Console.WriteLine(docs.TotalHits);
像fieldX:*这样的查询应该返回包含字段“fieldX”的所有文档。
您可能需要在搜索中允许前缀*(我目前没有 Lucene 的副本。)