ealsticsearch variety of search methods

increase

PUT /ecommerce/product/1
{ "name":"gaolujie yagao",
   "desc":"gaoxiao meibai",
   "price":30,
   "producer":"gaolujie producer",
   "tags":["meibai","fangzhu"]
}
PUT /ecommerce/product/2
{ "name":"jiajieshi yagao",
   "desc":"gaoxiao fangzhu",
   "price":25,
   "producer":"jiajieshi producer",
   "tags":["fangzhu"]
}
PUT /ecommerce/product/3
{ "name":"zhonghua yagao",
   "desc":"caoben zhiwu",
   "price":40,
   "producer":"zhonghua producer",
   "tags":["qingxin"]
}

Inquire

GET /ecommerce/product/1

modify

PUT /ecommerce/product/1
{ "name":"jiaqianban gaolujie yagao",
   "desc":"gaoxiao meibai",
   "price":30,
   "producer":"gaolujie producer",
   "tags":["meibai","fangzhu"]
}

It's not modify

PUT /ecommerce/product/1
{ "name":"jiaqianban gaolujie yagao"
}

modify

POST  /ecommerce/product/1/_update
{ 
  "doc":{
  "name":"gaolujie yagao"
  }
}

delete

DELETE /ecommerce/product/1

query string search

GET /ecommerce/product/_search
GET /ecommerce/product/_search?q=name:yagao&sort=price:desc

DSL

All data query

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

}

Sequence

GET /ecommerce/product/_search
{
   "query": {
     "match": {
       "name":"yagao"
     }
   },

   "sort": [
     {
       "price": {
         "order": "desc"
       }
     }
   ]

}

Paging

GET /ecommerce/product/_search
{
  "query": {

    "match_all": {}
  },
  "from": 0,
  "size":1

}

The query specifies column

GET /ecommerce/product/_search
{

  "query": {

    "match_all": {}
  }
  ,
  "_source": ["name","price"]

}

Data filtering


GET /ecommerce/product/_search
{
  "query": {

    "bool": {
      "must": [
        {"match": {
          "name": "yagao"
        }}]
      ,
      "filter": {
        "range": {
          "price": {
            "gt": 25,
            "lt": 50
          }
        }
      }
    }
  }

}

Full-text search, the search will be disassembled


PUT /ecommerce/product/5
{ "name":"special yagao",
   "desc":"special meibai",
   "price":50,
   "producer":"special yagao producer",
   "tags":["meibai"]
}

GET /ecommerce/product/_search
{

  "query": {

    "match": {
      "producer": "yagao producer"
    }
  }
}

Phrase search, not dismantling, completely contains the phrase

GET /ecommerce/product/_search
{

  "query": {

    "match_phrase": {
      "producer": "yagao producer"
    }
  }
}

Highlight


GET /ecommerce/product/_search
{
  "query": {

    "match": {
      "producer": "producer"
    }
  }
  ,

  "highlight": {
    "fields": {
      "producer":{}
    }
  }

}

Guess you like

Origin blog.51cto.com/395469372/2412182