当前位置: 首页 > news >正文

微服务框架 SpringCloud微服务架构 22 DSL 查询语法 22.1 DSL 查询分类和基本语法

微服务框架

【SpringCloud+RabbitMQ+Docker+Redis+搜索+分布式,系统详解springcloud微服务技术栈课程|黑马程序员Java微服务】

SpringCloud微服务架构

文章目录

      • 微服务框架
      • SpringCloud微服务架构
      • 22 DSL 查询语法
        • 22.1 DSL 查询分类和基本语法
          • 22.1.1 DSL Query 的分类
          • 22.1.2 DSL Query 基本语法
          • 22.1.3 总结

22 DSL 查询语法

22.1 DSL 查询分类和基本语法

22.1.1 DSL Query 的分类

Elasticsearch提供了基于JSON的DSL(Domain Specific Language)来定义查询。

官方文档:https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl.html

在这里插入图片描述

常见的查询类型包括:

  • 查询所有:查询出所有数据,一般测试用。例如:match_all

  • 全文检索(full text)查询:利用分词器对用户输入内容分词,然后去倒排索引库中匹配。例如【两种较为常见的】:

    • match_query
    • multi_match_query
  • 精确查询:根据精确词条值查找数据,一般是查找keyword、数值、日期、boolean等类型字段。例如:

    • ids
    • range
    • term
  • 地理(geo)查询:根据经纬度查询。例如:

    • geo_distance
    • geo_bounding_box
  • 复合(compound)查询:复合查询可以将上述各种查询条件组合起来,合并查询条件。例如:

    • bool
    • function_score
22.1.2 DSL Query 基本语法

查询的基本语法如下:

GET /indexName/_search
{
  "query": {
    "查询类型": {
      "查询条件": "条件值"
    }
  }
}

_search 是固定写法,代表做搜索

【举个栗子】:查询所有

// 查询所有
GET /indexName/_search
{
  "query": {
    "match_all": {
    }
  }
}

试试

# 查询所有
GET /hotel/_search
{
  "query": {
    "match_all": {}
  }
}

直接运行

在这里插入图片描述

OK, 201 条,全部文档都查出来了

整体来说,返回结果是一个“对象”,其中有很多属性

在这里插入图片描述

  • took:花费时间

  • timed_out:是否超时

  • _shards:

  • hits:命中的数据

    在这里插入图片描述

    • total:总数

    • max_score:文档相关性得分

    • hits:真正的文档数据【一个数组】

      在这里插入图片描述

      每一项都是一个文档

      【默认显示10条】

      在这里插入图片描述

22.1.3 总结

查询DSL的基本语法是什么?

  • GET /索引库名/_search
  • { “query”: { “查询类型”: { “FIELD”: “TEXT”}}}

相关文章:

  • Fairseq代码结构
  • [安装] Doris集群搭建环境
  • 【JavaScript】——JS数组的方法(全且详细)
  • GoWeb 进阶的实战项目,基于 Iris 框架实现 JWT 认证(附案例全代码)
  • MySQL数据库 —— 常用语句
  • AI虚拟人千亿级市场来袭,景联文科技提供全方面数据采集标注服务
  • [附源码]Python计算机毕业设计Django兴达五金日杂批发商店管理系统
  • u盘怎么数据恢复?靠这四种解决方法
  • 遥感影像目标检测:从CNN(Faster-RCNN)到Transformer(DETR)实践技术应用
  • Eureka
  • 【C++】list的模拟实现+迭代器的设计思维
  • AI 也会写代码了,但我并不担心
  • Java8 遍历List 使用stream().parallel()并发安全
  • 计算机毕业设计Java企业固定资产管理系统的设计实现(源代码+数据库+系统+lw文档)
  • 实验十一 级数与方程符号求解(MATLAB)
  • [附源码]Python计算机毕业设计Django疫情防控平台
  • Java - 通过反射进行赋值以及函数调用
  • OpUtils的网络扫描
  • 电力系统潮流计算(牛顿-拉夫逊法、高斯-赛德尔法、快速解耦法)【6节点 9节点 14节点 26节点 30节点 57节点】(Matlab代码实现)
  • Kafka消息队列大数据实战教程-第四篇(Kafka客户端Producer API)
  • 电加热油锅炉工作原理_电加热导油
  • 大型电蒸汽锅炉_工业电阻炉
  • 燃气蒸汽锅炉的分类_大连生物质蒸汽锅炉
  • 天津市维修锅炉_锅炉汽化处理方法
  • 蒸汽汽锅炉厂家_延安锅炉厂家
  • 山西热水锅炉厂家_酒店热水 锅炉
  • 蒸汽锅炉生产厂家_燃油蒸汽发生器
  • 燃煤锅炉烧热水_张家口 淘汰取缔燃煤锅炉
  • 生物质锅炉_炉
  • 锅炉天然气_天燃气热风炉