본문 바로가기

Monitoring/Elasticsearch

11. Query Result Options

Select the output field
 
특정 field 만 output 결과에 설정하려면 _source 옵션을 사용한다.
 
아래와 같이 다양한 방식으로 설정 가능하다.
 
GET /recipe/default/_search
{
  "_source" : ["user", "created_at"],
  "query" : {
    "term" : {"title" : "test"}
  }
}
GET /recipe/default/_search
{
  "_source" : false,
  "query" : {
    "term" : {"title" : "test"}
  }
}
GET /recipe/default/_search
{
  "_source" : "user",
  "query" : {
    "term" : {"title" : "test"}
  }
}
GET /recipe/default/_search
{
  "_source": {
    "includes": "user",
    "excludes": "created_at"
  }
  "query" : {
    "term" : {"title" : "test"}
  }
}
 
 
 
Paging
 
from 과 size 옵션으로 검색 결과를 분할할 수 있다.
 
아래는 검색 결과 중 10번째 문서부터 5개의 문서 가져오는 예이다.
 
GET /_search
{
  "from": 10,
  "size": 5,
  "query" : {
    "term" : {"title" : "test"}
  }
}
 
 
 
Sort
 
sort 옵션 으로 검색 결과를 정렬할 수 있다.
 
아래는 작성자 오름차순, 작성일 내림차순, 연관성 순으로 정렬한 것이다.
 
GET /_search
{
  "sort": [
    {"writer": {"order": "asc"}},
    {"created_at": {"order": "desc"}},
    "_score"
  ],
  "query" : {
    "term" : {"title" : "test"}
  }
}
 
 
 
Highlight
 
highlight 옵션으로 매치된 텀을 강조할 수 있다. fields 옵션에 처리를 하고 싶은 필드를 지정한다.
 
GET /_search
{
  "query": {
    "match": {
      "title": "test"
    }
  },
  "highlight": {
    "fields": {
      "title": {}
    }
  }
}
 
 
Format
 
yaml 이 보기 편한데 아래와 같이 yaml 로 결과를 볼 수 있다.
 
GET /company/_search?format=yaml
 
 
 
 
 
 
 
 

'Monitoring > Elasticsearch' 카테고리의 다른 글

12. Aggregation  (0) 2020.01.17
10. Joining Query  (0) 2020.01.17
09. Compound Query  (0) 2020.01.17
08. Query  (0) 2020.01.17
07. Analyzer  (1) 2020.01.17