Elasticsearch Kibana查询语法

2018年06月03日 23:52:30 wangpei1949 阅读数:3992
 

Elasticsearch Kibana Discover的搜索框中,使用的是Lucene Query Syntax。经常使用,在这里梳理并总结。

测试数据

创建索引设置mapping

#创建索引
PUT user_web_info #设置mapping
PUT user_web_info/_mapping/user
{
"properties": {
"uuid":{"type":"long"},
"name":{"type":"text","fields":{"keyword":{"type": "keyword"}}},
"nickname":{"type":"text"},
"age":{"type":"integer"},
"dt":{"type":"date","format": "yyyy-MM-dd"}
}
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14

插入数据

POST user_web_info/user/_bulk
{ "create": {"_id": "1" }}
{"uuid":1,"name":"jack chen","nickname":"apple pear","age":20,"dt":"2016-06-25"}
{ "create": {"_id": "2" }}
{"uuid":2,"name":"jack ma","nickname":"apple pear pear","age":22,"dt":"2016-08-23"}
{ "create": {"_id": "3" }}
{"uuid":3,"name":"lucy","nickname":"apple pear apple","age":23,"dt":"2016-08-25"}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

添加Index Patterns 查看数据

查询语法

全文搜索

单词

apple pear ,返回所有字段中包含单词apple或pear的文档
  • 1

短语

"apple pear" ,返回所有字段中包含短语"apple pear"的文档
  • 1

按字段搜索

一个字段

nickname:apple pear,返回nickname字段包含单词apple或pear的文档
nickname:"apple pear",返回username字段包含短语"apple pear"的文档
  • 1
  • 2

多个字段

name:jack AND nickname:"apple pear",返回name字段包含单词jack 并且 nickname字段包含短语"apple pear"的文档
  • 1

通配符搜索

匹配单一字符

nickname:appl? ,返回nickname字段包含单词(appl+任意一个字符)的文档
  • 1

匹配任意多个字符

nickname:app*e,返回nickname字段包含单词(以app开头,以e结尾)的文档
  • 1

范围搜索

包括首尾

dt:["2016-06-25" TO "2016-08-25"],返回"2016-06-25"≤ dt ≤"2016-08-25"的文档
  • 1

不包括首尾

dt:{"2016-06-25" TO "2016-08-25"},返回"2016-06-25"< dt <"2016-08-25"的文档
  • 1

包括首或尾

dt:{"2016-06-25" TO "2016-08-25"],返回"2016-06-25"< dt ≤"2016-08-25"的文档
  • 1

布尔搜索

AND

name:"jack ma" AND nickname:"apple pear pear",返回name字段包含"jack ma" 且 nickname字段包含"apple pear pear"的文档
  • 1

OR

name:jack OR nickname:apple,返回name字段包含jack或nickname字段包含apple的文档
  • 1

NOT

name:jack NOT nickname:"pear pear",返回name字段包含jack,nickname字段不包含"pear pear"的文档
  • 1

分组搜索

(name:"jack chen" OR name:lucy ) AND  nickname:"apple pear",返回name字段包含"jack chen"或lucy,同时nickname字段包含"apple pear"的文档

name:("jack chen" NOT lucy ) AND  nickname:"apple pear",返回name字段包含"jack chen"不包含lucy,同时nickname字段包含"apple pear"的文档
  • 1
  • 2
  • 3

转义特殊字符

{ }  + - && || ! ( ) [ ] ^ " ~ * ? : \,用\转义。能搜索到的内容和选择的分词器有关。

Elasticsearch Kibana查询语法的更多相关文章

  1. elk kibana查询语法

    elk日志系统中kibana查询语法 单项term查询 例: 搜 Dahlen, Malone 字段field查询 field:value 例:city:Keyport, age:26 通配符 ? 匹 ...

  2. kibana查询语法 使用教程

    1. 使用双引号包起来作为一个短语搜索: "like Gecko" 2. ? 匹配单个字符; * 匹配0到多个字符 例如:kiba?a, el*search ? * 不能用作第一个 ...

  3. kibana查询语法

    单项term查询 例: 搜 Dahlen, Malone 字段field查询 field:value   例:city:Keyport, age:26 通配符 ? 匹配单个字符      例: H?b ...

  4. kibana 查询语法

    根据某个字段查询 精确匹配: agent:"Mozilla/5.0" 如果不带双引号,只要包含指定值就可以搜索到 agent:Mozilla/5.0 如果是数值类型没有以上区别 数 ...

  5. Elasticsearch搜索查询语法

  6. 【转】elasticsearch的查询器query与过滤器filter的区别

    很多刚学elasticsearch的人对于查询方面很是苦恼,说实话es的查询语法真心不简单-  当然你如果入门之后,会发现elasticsearch的rest api设计是多么有意思. 说正题,ela ...

  7. elasticsearch基本概念与查询语法

    序言 后面有大量类似于mysql的sum, group by查询 elk === elk总体架构 https://www.elastic.co/cn/products Beat 基于go语言写的轻量型 ...

  8. ElasticSearch 查询语法

    ElasticSearch是基于lucene的开源搜索引擎,它的查询语法关键字跟lucene一样,如下: 分页:from/size 字段:fields 排序:sort 查询:query 过滤:filt ...

  9. kibana使用(ELK)、Lucene 查询语法

    Lucene查询 Lucene查询语法以可读的方式书写,然后使用JavaCC进行词法转换,转换成机器可识别的查询. 下面着重介绍下Lucene支持的查询: Terms词语查询 词语搜索,支持 单词 和 ...

随机推荐

  1. 2018-02-24 项目/教程中使用母语命名的"问题"

    早先试图找使用中文命名代码的项目, 但所获寥寥: 索引: 用中文编写代码的实用开源项目 · Issue #6 · program-in-chinese/overview. 更不用说教程了: 索引: 用 ...

  2. Git原理与命令大全

    Git (wiki: en  chs )是一个免费开源的分布式版本控制系统,由linux内核作者linus Torvalds开发,大型开源项目linux kernel.Android.chromium ...

  3. LNMP shell

    #!/bin/bash #set -x #date: 2018-12-13 #Description: 一键安装LNMP环境 or LAMP 环境 #Version: 0.4 #Author: sim ...

  4. Spring IOC源码实现流程

    最近一段时间学习了IOC的源码实现,分享一下大概流程 创建一个测试类 代码如下: package com.zcg.learn.Test; import org.junit.Test;import or ...

  5. 数据库 【redis】 命令大全

    以下纯属搬砖,我用Python抓取的redis命令列表页内容 如果想看命令的具体使用可查去官网查看,以下整理为个人查找方便而已 地理位置GEOADD 将指定的地理空间位置(纬度.经度.名称)添加到指定 ...

  6. 查看三种MySQL字符集的方法(转)

    MySQL字符集多种多样,下面为您列举了其中三种最常见的MySQL字符集查看方法,该方法供您参考,希望对您学习MySQL数据库能有所启迪. 一.查看MySQL数据库服务器和数据库MySQL字符集. m ...

  7. java日志框架log4j详细配置及与slf4j联合使用教程

    最后更新于2017年02月09日 一.log4j基本用法 首先,配置log4j的jar,maven工程配置以下依赖,非maven工程从maven仓库下载jar添加到“build path” <d ...

  8. cxf 整合 spring 时 java.lang.VerifyError异常

    异常信息主要有两个,Falling off the end of the code 和 illegal instruction found at offset 1: java.lang.VerifyE ...

  9. select下拉框的探索(<option></option>标签中能嵌套使用其它标签吗)

      select标签大家应该经常用到,有个问题可能没怎么注意过, select标签里面的option标签可以嵌套其它标签吗,比如i,span标签等? 经本人测试,答案是:可以嵌套其它标签,但审查元素会 ...

  10. MappedByteBuffer

    计算机内存管理 原文链接 https://www.cnblogs.com/guozp/p/10470431.html MMC:CPU的内存管理单元. 物理内存:即内存条的内存空间. 虚拟内存:计算机系 ...