资讯专栏INFORMATION COLUMN

Elasticsearch的REST风格API:基本查询

Tecode / 1886人阅读

摘要:查询所有会先分词再匹配包含小米或者手机的词条小米手机同时包含小米和电视的词条小米电视多个字段中查询小米高端大气查询被用于精确值匹配查询和查询一样,但它允许你指定多值进行匹配结果过滤来指定不想要显示的字段把各种其它查询通过与非或的方式进行组合

查询所有(match_all)

GET /goods/_search
{
"query": {

"match_all": {
  
}

}
}

会先分词再匹配(match) 包含小米或者手机的词条

GET /goods/_search
{
"query": {

"match": {
  "title": "小米手机"
}

}
}

同时包含小米电视的词条(match)

GET /goods/_search
{
"query": {

"match": {
  "title": {
    "query": "小米电视",
    "operator": "and"
  }
}

}
}

多个字段中查询(multi_match)

GET /goods/_search
{
"query": {

"multi_match": {
  "query": "小米高端大气",
  "fields": ["title","subTitle"]
}

}
}

term 查询被用于精确值 匹配

GET /goods/_search
{
"query": {

"term": {
  "price": {
    "value": "2500"
  }
}

}
}

terms 查询和 term 查询一样,但它允许你指定多值进行匹配

GET /goods/_search
{
"query": {

"terms": {
  "price": [
    "700",
    "2500"
  ]
}

}
}

结果过滤(_source)

GET /goods/_search
{
"query": {

"term": {
  "price": {
    "value": "2500"
  }
}

},
"_source": ["title","price"]
}

excludes:来指定不想要显示的字段

GET /goods/_search
{
"query": {

"term": {
  "price": 2500
}

},
"_source":{

"excludes": ["images"]

}
}

bool把各种其它查询通过must(与)、must_not(非)、should(或)的方式进行组合

GET /goods/_search
{
"query": {

"bool": {
  "must": [
    {
      "match": {
        "title": "小米"
      }
    },
    {
      "match": {
        "subTitle": "小米"
      }
    }
  ]
}

}
}

过滤条件(filter),filter通常和bool一起使用

GET /goods/_search
{
"query": {

"bool": {
  "must": [
    {
      "match": {
        "title": "小米"
      }
    },
    {
      "match": {
        "subTitle": "小米"
      }
    }
  ],
  "filter": {
    "term": {
      "category.keyword": "手机"
    }
  }
}

}
}

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/125959.html

相关文章

  • 慕课网_《ElasticSearch入门》学习总结

    摘要:时间年月日星期四说明本文部分内容均来自慕课网。那么里面的数据就可以分为各种各样的索引,比如汽车索引图书索引家具索引等等。图书索引又可以细分为各种类型,比如科普类小说类技术类等等。具体到每一本书籍,就是文档,就是整个图书里面最小的存储单位。 时间:2017年09月14日星期四说明:本文部分内容均来自慕课网。@慕课网:http://www.imooc.com教学源码:无学习源码:https...

    notebin 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<