Lucene查询语法和使用
  TEZNKK3IfmPf 2023年11月14日 99 0

Lucene查询语法和使用

 

(1)直接输入单词查询,比如输入Windows:

Lucene查询语法和使用

 

 

也可以根据一个关键词(key) 配上该关键词的值,精确查找,如选择关键词为ip,查找一个已知的ip地址:

Lucene查询语法和使用

 

也可以这样查询,假设已经某条日志数据中key为bytes的值为7000:

Lucene查询语法和使用

 "key":value,精确匹配。"bytes"的双引号可以不要,直接:

bytes: 19504

 

 

(2) 可以一次同时搜索多个单词,用 and 连接,比如 Windows and Chorme and GET,相当于编程中的&&逻辑判断:

Lucene查询语法和使用

 

and 和 or都是Lucene的逻辑判断,可以组合起来使用。

 

(3)通配符。
* 匹配0或多个字符。

Lucene查询语法和使用

 

 

 

(4)模糊查询。

在一个单词后面加上 ~,就可以模糊查询。~后面可以跟上一个 0到1的系数,默认是0.5,系数值越高,越精确。

zhang~

返回结果可能会是zhgan,模糊匹配,模糊查询。如果是zhangphil~1,则为精确查询,相当于一个单词。

 

(5)范围查询

Lucene支持简答的逻辑运行,常规的大于,小于,大于等于,小于等于

Lucene查询语法和使用

 

具体的使用,例如查询bytes字节数大于7000的数据:

Lucene查询语法和使用

 

 

可以将大于和小于组合起来,形成开始和截止的逻辑判断,两个组合判断条件用括号括起来:

Lucene查询语法和使用

 

 

(6)逻辑运算

AND  逻辑条件的与。 &&

OR  逻辑条件的或。 ||

NOT 逻辑条件的非。 !

+  有这个条件。

-  排除这个条件。

比如,查询bytes字节数大于19000但是不等于19504:

Lucene查询语法和使用

 

 

或者把NOT写入括号里面

Lucene查询语法和使用

 

这样写也可以:

(not bytes 19504) and (bytes >19000) 

 

 

(7)转义字符。

用 \ 转义。比如

\(1\+2\)\:3 
匹配查询
(1+2):3

【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月14日 0

暂无评论

推荐阅读
  TEZNKK3IfmPf   2023年11月14日   60   0   0 查询Oracle
  TEZNKK3IfmPf   2023年11月15日   34   0   0 语法
  TEZNKK3IfmPf   2023年11月14日   20   0   0 ES6语法
  TEZNKK3IfmPf   2023年11月15日   46   0   0 函数语法
  TEZNKK3IfmPf   2023年11月14日   220   0   0 查询mysql
  TEZNKK3IfmPf   2023年11月14日   26   0   0 SqlServer语法
  TEZNKK3IfmPf   2024年05月17日   48   0   0 查询mysql索引
  TEZNKK3IfmPf   2023年11月14日   19   0   0 查询
  TEZNKK3IfmPf   2023年11月14日   51   0   0 查询
  TEZNKK3IfmPf   2023年11月14日   100   0   0 查询语法
  TEZNKK3IfmPf   2023年11月14日   26   0   0 java语法
  TEZNKK3IfmPf   2024年05月31日   29   0   0 select查询
TEZNKK3IfmPf