1. 程式人生 > 實用技巧 >elasticsearch學習筆記——指令

elasticsearch學習筆記——指令

基於elasticsearch7.8.0,指令來自官網。個人筆記,備忘。

批操作

POST /_bulk
POST /<index>/_bulk

POST _bulk
{ "index" : { "_index" : "test", "_id" : "1" } }
{ "field1" : "value1" }
{ "delete" : { "_index" : "test", "_id" : "2" } }
{ "create" : { "_index" : "test", "_id" : "3" } }
{ "field1" : "value3" }
{ "update" : {"
_id" : "1", "_index" : "test"} } { "doc" : {"field2" : "value2"} }

搜尋

  • 預設查詢10條記錄,match_all:所有,sort:排序
GET /bank/_search
{
  "query": { "match_all": {} },
  "sort": [
    { "account_number": "asc" }
  ],
  "from": 10,
  "size": 10
}
  • match:欄位全文搜尋
GET /bank/_search
{
  "query": { "match": { "address": "
mill lane" } } }
  • match_phrase:短語查詢
GET /bank/_search
{
  "query": { "match_phrase": { "address": "mill lane" } }
}
  • bool:組合多個查詢條件
  • must:必須
  • should:應該
  • must_not:必須不
GET /bank/_search
{
  "query": {
    "bool": {
      "must": [
        { "match": { "age": "40" } }
      ],
      "must_not": [
        { 
"match": { "state": "ID" } } ] } } }
  • filter:過濾,常用與範圍篩選
GET /bank/_search
{
  "query": {
    "bool": {
      "must": { "match_all": {} },
      "filter": {
        "range": {
          "balance": {
            "gte": 20000,
            "lte": 30000
          }
        }
      }
    }
  }
}

待續