elasticsearch系列三:常用查询语法

概述

前几篇我们介绍了如何在es中存储数据,如何更加合理的存储数据,今天我们来说下常用的查询语法,如何实现mysql中的等于、大于、小于、and 、or、in等方式。

案例

我们以kibana为例,比如sql中的等于,在es中可以用term实现如下图:

图片

and我们可以看到filter是一个数组的结构,其实就等于and,我们可以在filter中并存多个条件,如下图:

图片

那么通过java Api怎么实现呢?来看下:

图片

or的话我们可以通过shuld的方式实现,kibana中对应的语法:

图片

那么in呢?我们可以通过must+shuld的方式实现,kibana对应的语法:

图片

对应java中的代码语法:

图片

大于小于对应range语法,也就是范围匹配,gt就是对应大于、lt就是对应小于、gte就是对于等于,比如我们进行时间范围的查询:

图片

对应的java中的语法:

图片

咱们最后说下模糊查询的问题,前面说的呢都是基于keyword的精确查询,那么对于text的格式存储的数据大多数是通过模糊的形式,常用的算是match语法了,并且可以基于es的相关度分数设置高亮,我们还是看下基本kibana语法是怎么样的:

图片

match性能是很慢的,所以非特殊业务下不建议使用该api,我们想用左前缀查询怎么办呢?可以通过match_phrase_prefix的方式,并且可以和上面说的条件共同使用,咱们看下例子:

图片

总结

基本常用的查询语法都说了下,在给大家分享一个经验,通过java操作es的时候如果不熟悉api,可以基于kibana自动提示功能基本可以实现基本语法,然后根据kibana中的语法摸索出来java中API,好了咱们今天先到这,下期咱们看下如何更好的运维es集群。


Elasticsearch系列经典文章

图片

相关推荐

  1. Elasticsearch语句

    2023-12-30 01:28:01       17 阅读
  2. ElasticSearch基础及查询

    2023-12-30 01:28:01       40 阅读
  3. ElasticSearch查询格式介绍

    2023-12-30 01:28:01       31 阅读
  4. ElasticSearch 查询优化方式

    2023-12-30 01:28:01       11 阅读
  5. ElasticsearchDSL语句

    2023-12-30 01:28:01       35 阅读
  6. Elasticsearch 查询语法

    2023-12-30 01:28:01       37 阅读
  7. SQL语句--模糊查询LIKE

    2023-12-30 01:28:01       9 阅读

最近更新

  1. TCP协议是安全的吗?

    2023-12-30 01:28:01       17 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2023-12-30 01:28:01       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2023-12-30 01:28:01       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2023-12-30 01:28:01       18 阅读

热门阅读

  1. @staticmethod函数装饰器

    2023-12-30 01:28:01       35 阅读
  2. 有序数组的平方

    2023-12-30 01:28:01       37 阅读
  3. 深入探讨在SpringBoot中分布式锁的实现与应用

    2023-12-30 01:28:01       32 阅读
  4. RecyclerView刷新显示的问题

    2023-12-30 01:28:01       39 阅读
  5. 接收多个参数的函数——python

    2023-12-30 01:28:01       33 阅读
  6. Vue3自定义指令与Composition API实现动态权限控制

    2023-12-30 01:28:01       38 阅读
  7. Linux sed 命令

    2023-12-30 01:28:01       39 阅读
  8. 第八章 创建Callout Library - ZFentry 链接选项

    2023-12-30 01:28:01       38 阅读
  9. 【CISSP学习笔记】7. 安全评估与测试

    2023-12-30 01:28:01       35 阅读
  10. AE学习笔记十--------------3Dmax协作-三维场景合成

    2023-12-30 01:28:01       38 阅读
  11. 安卓下Application和Activity的Context获取

    2023-12-30 01:28:01       31 阅读