elasticsearch查询相关
2026/6/5 19:23:02 网站建设 项目流程

文章目录

      • 查询结构
        • bool是什么意思
        • bool通用模板
        • 一级标签有哪些?

内容太多了,拆出来些。

查询结构

bool是什么意思

must # 所有条件都要满足,相当于and
should # 满足任一条件即可,相当于or
must_not # 全部条件都不能满足,相当于非
filter # filter是数组,多个条件的默认关系是and,如果要实现or或非,在里面再内嵌should或者must_not

must、should、must_not都参与打分,因为一般与match搭配,会拆分查询,所以拿到的结果需要打分。
filter不参与打分,因为是精准查询,没必要打分了。

bool通用模板
{"query":{"bool":{"must":[// 全文检索、match分词,要相关性排序放这里{"match":{"title":"小米耳机"}}],"filter":[// 精准条件、状态、价格区间一律放这{"term":{"sale":1}},{"range":{"price":{"gte":100,"lte":500}}}]}}}
一级标签有哪些?

例如query是一级标签,还有哪些呢?

{"query":{"match":{"title":"金庸"}},"aggs":{"categories":{"terms":{"field":"category.keyword"}}},"sort":[{"publish_date":{"order":"desc"}}],"from":0,"size":10,"_source":["title","author","price"],"highlight":{"fields":{"title":{}}}}

看这个也行:

{"query":{},"aggs":{},"sort":[],"from":0,"size":10,"_source":[],"highlight":{},"suggest":{},"collapse":{}}

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询