ES搜索引擎入门+最佳实践(四)

本文介绍了Elasticsearch的搜索功能,包括搜索辅助功能(如指定字段、计数、分页、性能分析和评分分析)、搜索匹配功能(如match_all、term、range、复合查询、全文搜索等)以及搜索排序。示例代码展示了如何实现各种查询和排序操作,旨在帮助读者深入理解ES的搜索机制。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

        ES在搜索和数据分析中的应用越来越广泛,在之前项目中对ES的使用有些心得,最近有不少朋友和同事都问到了ES,刚好最近也有些时间,所以打算通过8~10篇文章介绍下ES.(其实我也不知道最终会写下多少篇),为了保持阅读的连贯性,可以先看前面几篇文章:

ES搜索引擎入门+最佳实践(一)_flame.liu的博客-优快云博客

ES搜索引擎入门+最佳实践(二)_flame.liu的博客-优快云博客

ES搜索引擎入门+最佳实践(三)_flame.liu的博客-优快云博客

一. 概要

先归纳前面提到过和本篇将要提到的几个命令和操作.

ES中的命令
命令 说明
PUT 相当于SQL中的增加信息
GET 相当于SQL中的查询
POST 相当于SQL中的修改
DELETE 相当于SQL中的删除                                                

上面表格中对命令的解释并不够严谨,但是我们可以先这样做类比,这样便于了解,后面再一步步深入理解.

ES中的操作
操作  说明
_source 在查询时设置一个数组,用于指定需要查找的字段
_count 在查询时设置ES返回匹配查询条件的结果数量
_search 执行索引的查询操作
_explain 查看搜索时匹配的详情       
_close / _open 关闭索引, 打开索引
_doc        表示进行文档操作

_aliases

给索引取别名
_mapping 操作索引中的映射
_bulk 进行批量操作
_index         用于指定索引名称
_update 执行更新操作

        先对上面的内容有个初步的印象有利于开始后面的学习.本篇文章主要介绍ES的搜索功能.包括搜索辅助功能,搜索匹配功能以及搜索排序.

        本篇文章将用下面的这个索引作为案例:

PUT /goods
{
  "mappings": {            //映射
    "properties": {        //属性
      "title":{            //将title定义为多字段
        "type": "text",
        "fields": {"title_key":{"type":"keyword"}}    //title将建立text类型和keyword类型两个索引
      },
      "price":{"type": "double"},        //价格
      "stockNum":{"type": "integer"},    //库存
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值