본문 바로가기

(Elasticsearch) kibana query 실습 - Full Text Query

2021. 3. 23.

Full Text query

match_all

  • 한 인덱스의 모든 도큐먼트를 검색
  • 쿼리를 넣지 않고 검색한 결과와 동일

match

  • match fied에 있는 검색어로 필터링된 결과를 얻을 수 있다.
  • operator: 필터를 명시 해주지 않으면 디폴트로 or 이 설정되어 있다.
  • 공백으로 검색할 각 단어를 구분
GET my_index/_search
{
  "query": {
    "match": {
      "message": A B"
      "operator": "and"
    }
  }
}
  • A와 B가 들어간 메세지 필드 검색
    ex ) "A B", "A C B", C A A D B"

match_phrase

  • 공백포함 정확한 단어 구분을 위해 사용한다.
  • slop 필드로 단어 중간에 지정된 갯수만큼 포함가능 한 옵션을 설정할 수 있다.
GET my_index/_search
{
  "query": {
    "match_phrase": {
      "message": {
        "query": "A B",
        "slop": 1
      }
    }
  }
}
  • "A B" 검색 사이에 1단어 포함 가능
    ex ) "A B", "A C B"

query_string

  • query를 이용해 여러 조건의 키워드를 설정할 수 있다.
  • default_field 로 필드명 설정
  • query 필드로 쿼리 설정
{
  "query": {
    "query_string": {
      "default_field": "message",
      "query": "(A AND B) OR \"C D\""
    }
  }
}

ex) "A B", "A C A", "D A E", "A Q B"

'Elasticsearch' 카테고리의 다른 글

(Elasticsearch) Kibana 로 CRUD 실습  (0) 2021.03.23
댓글