我正在建立索引日志,包括关卡,并且我厌倦了执行串联查询的"INFO OR DEBUG OR TRACE"
,有没有特定于ElasticSearch或Lucene的方法,以允许您指定范围是非数字的,所以我可以做一些像"level:>=INFO"
?非数字范围搜索
Q
非数字范围搜索
0
A
回答
0
在Lucene的你可以这样做:
level:[DEBUG TO TRACE]
但是这将使这是按字母顺序排列这两个之间的任何级别(包括它们,使用{}排除)。
更新:它可能需要一段时间,直到这被添加到Solr(如果加),但this issue会是你所需要的
+0
你可以用elasticsearch做同样的事情,也可以使用[range query](http://www.elasticsearch.org/guide/reference/query-dsl/range-query/),它也适用于字符串。但是,它仍然依赖于字母顺序,这不是@Nicholas希望的。 – javanna
相关问题
- 1. 范围搜索字段
- 2. 搜索范围内的数字列表
- 3. ElasticSearch [1.4.4]:使用非数字输入的数值索引范围搜索
- 4. VBA搜索范围
- 5. AngularJS - 范围搜索
- 6. CouchBase范围搜索
- 7. b搜索和搜索范围?
- 8. Grails搜索搜索BigDecimal范围
- 9. 如何在搜索范围内搜索?
- 10. 搜索再次搜索范围
- 11. 二进制搜索树 - 搜索范围
- 12. 在SOLR的搜索范围内搜索
- 13. 字符串的搜索范围
- 14. 范围搜索3列的字符串
- 15. Apache SOLR和字符串范围搜索
- 16. 在Solr中非规范化和搜索日期范围
- 17. 范围在BST中搜索
- 18. 动态范围搜索
- 19. 二进制搜索范围
- 20. 范围栏搜索iPad
- 21. 按日期搜索范围
- 22. PHP缩小搜索范围
- 23. 搜索列表,范围
- 24. 在Zend_Search_Lucene和范围搜索
- 25. 搜索栏范围问题
- 26. 在mongo中搜索范围
- 27. Sharepoint搜索结果范围
- 28. ActiveScaffold搜索日期范围
- 29. IMAP搜索 - 日期范围
- 30. 搜索范围和列表
'INFO或调试或TRACE'是情理之中的事唯一的方法。两种技术如何能够得出“DEBUG”和“TRACE”都大于“INFO”的结论?如果您厌倦了重写相同的查询逻辑,请创建一个对象或工厂来为您处理它。 – femtoRgon
我想知道是否有一种Enum可用于Lucene与有序元素。我不认为,放弃之前最好先问一下。 – Nicholas
好的,我明白你以后的样子。我没有意识到任何东西,开箱即用,但扩展[MultiTermQuery](https://lucene.apache.org/core/4_1_0/core/org/apache/lucene/search/MultiTermQuery.html) ,并且重写getTermsEnum来为这种情况提供适当的[FilteredTermsEnum](https://lucene.apache.org/core/4_1_0/core/org/apache/lucene/index/FilteredTermsEnum.html)。 – femtoRgon