Elasticsearch 过滤 - 奇客谷

Elasticsearch 教程

相关推荐

Elasticsearch 过滤


_score(分数)字段是衡量文档与搜索条件匹配程度的一个指标。分数越高,文档越相关,分数越低,文档越不相关。并不总是需要生成分数,需不需要Elasticsearch会自动判断,以避免计算无用的分数。

布尔查询还支持filter子句,用于设置过滤条件。过滤条件不影响文档的相关性分数。

下面的例子,使用布尔查询,返回余额在20000到30000之间的所有帐户。

API

GET /bank/_search
{
  "query": {
    "bool": {
      "must": { "match_all": {} },
      "filter": {
        "range": {
          "balance": {
            "gte": 20000,
            "lte": 30000
          }
        }
      }
    }
  }
}

复制

CURL

curl -X GET "localhost:9200/bank/_search" -H 'Content-Type: application/json' -d'
{
  "query": {
    "bool": {
      "must": { "match_all": {} },
      "filter": {
        "range": {
          "balance": {
            "gte": 20000,
            "lte": 30000
          }
        }
      }
    }
  }
}
'

复制

上面的布尔查询中,包含一个match_all查询(查询部分)和一个range查询(筛选部分)。过滤条件中的range查询不影响文档的相关性分数计算。

除了match_allmatchboolrange查询,还有其他许多查询类型,工作原理大同小异,可参考相关资料。


Doc navigation

← Elasticsearch 搜索

Elasticsearch 聚合 →

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值