kibana  操作

dabin147369發表於2020-12-09

kibana  操作


GET _analyze
{
  "analyzer": "ik_smart",
  "text": "溫曉彬是大牛"
}

GET _analyze
{
  "analyzer": "ik_max_word",
  "text": "溫曉彬是大牛"
}

PUT /shop/user/1
{
  "name": "jack",
  "phone": "13754854125",
  "age": "23",
  "rank": 52,
  "tags": ["css","html","vue"]
}

# put 如果沒有設定的欄位, 會預設設定為空
PUT /shop/user/2
{
  "name": "張三",
  "phone": "13754125845",
  "age": "28",
  "rank": 2,
  "tags": ["java","css","html"]
}

PUT /shop/user/3
{
  "name": "李四",
  "phone": "13754152845",
  "age": "30",
  "rank": 8,
  "tags": ["java","javascript","spring"]
}

# 加_update 只更新對應欄位, 不加的話, 如果沒有設定的欄位,值會默讓設定為空
POST /shop/user/1/_update
{
  "doc": {
    "name": "二哥"
  }
}

GET /shop/user/1

GET /shop/user/_search?q=name:二哥

# match 精確查詢
# _source 返回結果過濾要顯示的欄位
GET shop/user/_search
{
  "query": {
     "match":{
       "name": "張三"
     }
  },
  "_source": ["name","phone"]
}

#排序
GET shop/user/_search
{
  "query": {
     "match":{
       "name": "張三"
     }
  },
  "sort": [
    {
      "rank": {"order": "desc"}
    }
  ],
  "from": 0,
  "size": 2
  
}

# 多條件查詢   must 想當於 and
GET shop/user/_search
{
  "query": {
     "bool":{
       "must":[
          {
            "match": {
              "name": "張三"
            }
          },
          {
            "match": {
              "age": "28"
            }
          }
        ]
     }
  },
  "sort": [
    {
      "rank": {"order": "desc"}
    }
  ],
  "from": 0,
  "size": 2
  
}

# 或查詢  should
GET shop/user/_search
{
  "query": {
     "bool":{
       "should":[
          {
            "match": {
              "name": "張三"
            }
          },
          {
            "match": {
              "age": "23"
            }
          }
        ]
     }
  },
  "sort": [
    {
      "rank": {"order": "desc"}
    }
  ],
  "from": 0,
  "size": 2
  
}


# 不等於  must_not
GET shop/user/_search
{
  "query": {
     "bool":{
       "must_not":[
          
          {
            "match": {
              "age": "23"
            }
          }
        ]
     }
  },
  "sort": [
    {
      "rank": {"order": "desc"}
    }
  ],
  "from": 0,
  "size": 2
  
}

# 可以用過濾器進行資料過濾
GET shop/user/_search
{
  "query": {
     "bool":{
       "must_not":[
          
          {
            "match": {
              "age": "23"
            }
          }
        ],
        "filter": {
          "range": {
            "rank": {
              "gt": 5,
              "lt": 100
            }
          }
        }
     }
  }
}

# 匹配多個條件 多個條件使用空格隔開即可

GET shop/user/_search
{
  "query": {
     "match":{
       "tags": "spring css"
     }
  }
}

相關文章