ElasticSearch最佳入门实践(四十九)各种query搜索语法

1、match all

查询所有

GET /_search
{
    "query": {
        "match_all": {}
    }
}

2、match

匹配某一个filed是否包含文本

GET /_search
{
    "query": { "match": { "title": "my elasticsearch article" }}
}

3、multi match

可以把搜索到的文本放到多个field上去

GET /test_index/test_type/_search
{
  "query": {
    "multi_match": {
      "query": "test",
      "fields": ["test_field", "test_field1"]
    }
  }
}

4、range query

范围查询
年龄 >= 30的员工


GET /company/employee/_search 
{
  "query": {
    "range": {
      "age": {
        "gte": 30
      }
    }
  }
}

5、term query

会把这个字段当成 exact value 全匹配来查询 不会进行分词

GET /test_index/test_type/_search 
{
  "query": {
    "term": {
      "test_field": "test hello"
    }
  }
}

6、terms query

GET /_search
{
    "query": { "terms": { "tag": [ "search", "full_text", "nosql" ] }}
}

7、exist query(2.x中的查询,现在已经不提供了)

这个字段不能为空

GET /test_index/test_type/_search 
{
  "query": {
    "exists": {
      "field": "title"
    }
  }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值