기초 질의문을 정리합니다.
* 색인 확인 : http://주소/_cat/indices?v
* 인덱스 검색 : http://주소 /인덱스/_search
* 인덱스 갯수 : http://주소 /인덱스/_count
1. 정렬
1) 오름차순
{
"sort" : [
{"대상" : "asc"}
]
}
2) 내림차순
{
"sort" : [
{"대상" : "desc"}
]
}
2. 검색
1) 전부 검색
{
"query": {
"match_all": {}
}
}
2) 값 일치 검색
{
"query": {
"match": {
필드 : 조건값
}
}
}
3) 구문 검색
{
"query": {
"match_phrase": {
필드 : 조건값
}
}
}
4) AND 검색(N개의 조건이 일치, 여기선 2개의 대한 샘플)
{
"query": {
"bool": {
"must": [
{
"match": {
"필드1": "조건1"
}
},
{
"match": {
"필드2": "조건2"
}
}
]
}
}
}
5) OR 검색(N개의 조건 중 1개, 여기선 2개의 대한 샘플)
{
"query": {
"bool": {
"should": [
{
"match": {
"필드1": "조건1"
}
},
{
"match": {
"필드2": "조건2"
}
}
]
}
}
}
6) AND NOT 검색(N개의 조건 아닌것, 여기선 2개의 대한 샘플)
{
"query": {
"bool": {
"must_not": [
{
"match": {
"필드1": "조건1"
}
},
{
"match": {
"필드2": "조건2"
}
}
]
}
}
}
7) 필터 검색(BOOL 조건에서 필터링 추가, 여기선 match에 대한 필터로 추가, 필터 단독 사용 가능)
{
"query": {
"bool": {
"must": {
"match": {
"필드1": "조건1"
}
},
"filter": {
"range": {
"범위값": {
"gte": 20000,
"lte": 30000
}
}
}
}
}
}
8) 와일드 카드
{
"query": {
"bool": {
"must": {
"wildcard": {
"필드": "*조건*"
}
}
}
}
}
9) 정규 표현식
{
"query": {
"regexp": {
"필드1": ".*값.*"
}
}
}
10) 형태소
{
"query": {
"term": {
"필드1": "값"
}
}
}
11) N개의 형태소
{
"query": {
"terms": {
"필드1": [
"값1",
"값2",
"값3",
],
"minium_should_match": 일치갯수(숫자)
}
}
}
12) 접두어
{
"query": {
"prefix": {
"필드": "값"
}
}
}
13) 찾고자 하는 필드 존재 여부 (있음)
{
"query": {
"exists": {
"field": "대상필드"
}
}
}
13) 찾고자 하는 필드 존재 여부 (없음)
{
"query": {
"bool": {
"must_not": [
{
"exists": {
"field": "대상필드"
}
}
]
}
}
}
14) 논리형 데이터 질의(값이 true, false로 저장되어 있는 경우)
{
"query": {
"bool": {
"must": [
{
"term": {
"대상필드": false
}
}
]
}
}
}
3. 그룹핑(별칭 aa, bb로 그룹핑 한 경우)
{
"size": 0,
"aggs": {
"aa": {
"terms": {
"field": "필드1.keyword"
},
"aggs": {
"bb": {
"terms": {
"field": "필드1.keyword"
}
}
}
}
}
}
4. 페이징을 위한 제한
1) 가져오는 크기 지정
{
"size": 1
}
2) 시작부분 지정
{
"from": 1
}
5. 조회시 결과값 대상 지정(원하는 항목만 나오게)
{
"_source": [
"원하는 필드1",
"원하는 필드2",
]
}
6. 데이터 Field 변경
PUT 주소/_mapping/_doc
{
"properties": {
"대상": {
"type": "text",
"fielddata": true
}
}
}
7. 매핑 규칙 적용
{
"mappings": {
"type": {
"properties": {
"대상": {
"type": "double" #형태
}
}
}
}
}
8. 매핑 규칙 추가
PUT 주소/대상/_mapping/_doc
{
"properties": {
"새로추가": {
"type": "float" #형식
}
}
}
9. 조회 한계 설정
PUT 주소/대상/_settings
{
"max_result_window" : 500000
}
반응형
'엘라스틱서치(Elasticsearch)' 카테고리의 다른 글
엘라스틱서치 and or절 생성시 유의사항(Elasticsearch should minimum_should_match ) (8) | 2021.07.01 |
---|---|
엘라스틱서치 노리 한글검색(Elasticsearch nori) 방법 (0) | 2021.06.22 |
윈도우 엘라스틱서치 + 노리설치(window elasticsearch nori) (0) | 2021.06.08 |
윈도우 엘라스틱서치 + MongoDB 연동(window elasticsearch Mongodb monstache) (2) | 2021.05.28 |
윈도우 엘라스틱서치 + MSSQL 연동(window elasticsearch mssql logstash) (5) | 2021.05.28 |
* 위 에니메이션은 Html의 캔버스(canvas)기반으로 동작하는 기능 입니다. Html 캔버스 튜토리얼 도 한번 살펴보세요~ :)
* 직접 만든 Html 캔버스 애니메이션 도 한번 살펴보세요~ :)
댓글