Lucene Query In Kibana

时间:2022-03-01 17:34:16

1. Terms

一个查询由词条与操作组成。词条可以是单词,或者短语。

hello    #单独项
"hello pzdn" #双引号引起来短语

2. Field

Lucene 支持字段数据。通过冒号指定。

语法:

FieldName:content

eg:

title:"The Right Way" AND text:go #查询标题为"The Right Way",文本为go的记录,且"The Right Way"作为一个整体
title:The Right Way # 这里,The Right Way 将被分词
SystemCode:MKT AND Message:"解析失败" # AND连接两个条件,作为逻辑且
SystemCode:MKT OR SystemCode:MT # OR连接两个条件,作为逻辑或

2.1 通配符查询

针对Term,可以进行Unix风格的通配符查询。

te?t
test*
te*t

2.2 正则

/[mb]oat/  #匹配moat 或者 boat

2.3 模糊搜索

roam~ #包含roam的
roam~1

2.4 近邻搜索

"jakarta apache"~10 #允许之间有10个分词。

2.5 区间搜索

mod_date:[20020101 TO 20030101] #包含端点
title:{Aida TO Carmen} #不包含端点

3. 逻辑操作符

3.1 AND OR NOT + -

OR

"jakarta apache" OR jakarta

AND

"jakarta apache" AND "Apache Lucene"
+jakarta lucene#必须

NOT

"jakarta apache" NOT "Apache Lucene"
"jakarta apache" -"Apache Lucene" #排除

3.2 分组

(jakarta OR apache) AND website

3.3 字段分组

title:(+return +"pink panther")

4. 转义

+ - && || ! ( ) { } [ ] ^ " ~ * ? : \ /

eg:

\(1\+1\)\:2

Ref:https://lucene.apache.org/core/5_2_0/queryparser/org/apache/lucene/queryparser/classic/package-summary.html#Overview

REf:http://www.tuicool.com/articles/VZfim2