如何使用TermQuery完全匹配LongField?Lucene LongField使用查询精确搜索
4
A
回答
6
注意警告:此API仅供内部用途,并在接下来的版本不兼容的方式可能会改变。
我注意到这对某些人来说成了一个问题,因为NumericUtils API的确从Version 3.6变为了Version 4.0。我会建议避免直接使用它。请使用NumericRangeQuery来搜索数字值。通过将最大和最小范围设置为相等的值可以获得精确的匹配。
此外,故意选择哪些字段应该是数字可能会有所帮助。 NumericFields旨在允许数字范围查询和排序。如果您不需要使用它作为数字值进行搜索,则它可能不应该是NumericField。例如,识别号码通常应该是关键字,而不是数字。
1
BytesRef ref = new BytesRef();
NumericUtils.longToPrefixCoded(12L, 0, ref);
Query q = new TermQuery(new Term(fieldname, ref));
相关问题
- 1. 使用Lucene的精确短语搜索?
- 2. lucene查询搜索
- 3. Lucene OR搜索使用布尔查询
- 4. Lucene搜索(如何查询?)
- 5. Lucene查询语法搜索
- 6. Lucene复合查询搜索
- 7. Lucene:如何从索引获取LongField
- 8. 使用Lucene的精确字符串匹配。搜索
- 9. 如何使用Apache Lucene获得精确的搜索结果?
- 10. Lucene - 用布尔查询搜索子集
- 11. PhraseQuery:可以从Lucene的查询(不能精确搜索),如果没有找到
- 12. 使用精确搜索术语不区分大小写查询
- 13. 搜索使用Lucene
- 14. 执行Lucene的搜索查询“包含”
- 15. Lucene查询对象和搜索
- 16. 查询为Lucene搜索结果
- 17. PHP精确搜索
- 18. lucene短语确切搜索
- 19. OrientDB对lucene搜索的查询结果不正确
- 20. 如何使用查询语法在Lucene中获得准确的搜索结果
- 21. Solr使用连字符精确搜索
- 22. 搜索具有精确编辑距离的Lucene
- 23. 使用Lucene空间搜索日期范围查询/ DateRangePrefixTree?
- 24. 我们可以使用lucene查询来进行fts_alfresco搜索吗?
- 25. 如何使用opensearch和Lucene发送搜索查询?
- 26. 使用Lucene短语查询和PDFBOX搜索PDF中的句子
- 27. 使用Lucene搜索功能
- 28. 使用kohana zend lucene搜索
- 29. 如何根据lucene搜索结果查询lucene?
- 30. 使用lucene进行精确词组搜索,不增加字段数