美文网首页
ES多子句查询

ES多子句查询

作者: 郭彦超 | 来源:发表于2020-04-10 17:31 被阅读0次

dis_max

dis_max 支持多子句查询,子句之间是or的关系,如果两个子句都匹配到相同的文档,取最高子句分值作为文档分值。

GET search_data/_search
{
  "size": 120, 
   "_source": "title", 
  
  "query": {
        "dis_max" : {
            "queries" : [
                { "match": { "title" : "日历" }},
                { "term" : { "title": "青春" }}
            ],
            "tie_breaker" : 1
        }
    }
}

查询结果:

 {
        "_index" : "search_data",
        "_type" : "_doc",
        "_id" : "1016324",
        "_score" : 20.455635,
        "_ignored" : [
          "xk_last_create_time"
        ],
        "_source" : {
          "title" : "青春飞扬日历邀请函"
        }
      },
      {
        "_index" : "search_data",
        "_type" : "_doc",
        "_id" : "469400",
        "_score" : 14.045259,
        "_ignored" : [
          "xk_last_create_time"
        ],
        "_source" : {
          "title" : "2018新年日历音乐相册"
        }
      }

  • tie_breaker
    取值[0-1],如果tie_breaker 参数大于0,那么分值会取最大子句分值+其它子句分值*tie_breaker

相关文章

  • ElasticSearch查询DLS

    查询和过滤的区别 ES提供基于JSON的完整DSL来定义查询,查询DSL包括两种子句:叶查询子句:在特定的字段上查...

  • ES多子句查询

    dis_max dis_max 支持多子句查询,子句之间是or的关系,如果两个子句都匹配到相同的文档,取最高子句分...

  • Elasticsearch query查询语法 --- 2022

    本章介绍ES 的query子句的语法,query子句主要用于编写查询条件,类似SQL中的where语句。 1.匹配...

  • Elasticsearch bool query小结

    背景 最近有一个线上的es查询问题,最后确定在使用bool query多条件组合查询时出现should子句查询失效...

  • MySQL学习day-34:子查询与分页

    一、子查询 可以将子查询放在许多的 SQL 子句中,包括:WHERE 子句; HAVING 子句;FROM 子句。...

  • mysql高级增删改查

    一、高级查询 select 子句 [from 子句] [where 子句] [group by子句] [havin...

  • 二:SQL查询语言

    ①、查询语句可以分为: select 子句、from 子句、where 子句、order by 子句、group ...

  • sql语句的分类DQL、DML、DDL、DCL

    1. 数据查询语言DQL 数据查询语言DQL基本结构是由SELECT子句,FROM子句,WHERE 子句组成的查询...

  • ElasticSearch 7.x 聚合查询

    聚合查询 |ES 的聚合查询和MyQL的聚合查询类型,ES 的聚合查询相比MySQL 要强大的多,ES提供的统计数...

  • SQL 语言 4 大类 (5 类 ?)

    数据查询语言(DQL):是由SELECT子句,FROM子句,WHERE子句组成的查询块 数据操纵语言(DML): ...

网友评论

      本文标题:ES多子句查询

      本文链接:https://www.haomeiwen.com/subject/dzfdmhtx.html