ElasticSearch十--ES--query string和simple query string

query string和simple query string

query string

类似URI query

指令

POST users/_search
{
  "query":{
    "query_string":{
      "default_field":"job_name",  //相当于URI的 df
      "query":"产品"
    }
  }
}

还可以搜索多个字段

指令

POST users/_search
{
  "query":{
    "query_string":{
      "query":"产品",
      "fields":['job_name'] //搜索job_name是产品的
    }
  }
}

还可以直接在query里面使用AND,OR,NOT的操作符

指令

POST users/_search
{
  "query":{
    "query_string":{
      "query":"产 OR 品",
      "fields":['job_name'] //搜索job_name是产品的
    }
  }
}

simple query string

类似 query string ,但是会忽略错误的语法,同时只支持部分查询语法

  • 不支持AND OR NOT ,会当做字符处理
  • Term 之间默认的关系是OR,可以指定 operator
  • 支持 部分逻辑
    • +代替AND
    • |代替OR
    • -代替NOT

这里如果使用了+或者AND还有OR,那么会使用AND,而OR不生效。

指令

POST users/_search
{
  "query":{
    "query_string":{
      "query":"产-品", //这里-代表OR
      "fields":['job_name'] //搜索job_name是产品的
      "default_operator": "OR"  //指定默认操作符
    }
  }
}

极客时间 ES 学习笔记

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值