반응형
Query DSL | Elasticsearch REST API | [ POST ,HEADER : { Content-Type : application/json } ,BODY: {raw: } ] |
RDB |
match_all | { "query": { "match_all":{} } } |
select * from table | |
match | { "query": { "match": { "필드명": "값" } } } |
select * from table where 필드명= “값” |
|
bool, match, match_not |
{ "query": { "bool": { "must": [ { "match": { "필드명": "값" } } ], "must_not": [ { "match": { "addressSiGunGu" : "강남구" }} ] } } } |
select * from table where 필드명1 = “값1” and 필드명2 != “값2” |
|
range | { "query": { "range": { "필드명": { "gte": "2021-03-07", "lte": "2021-03-20", "format": "yyyy-MM-dd" } } } } |
select * from table where 필드명 between '값1' and '값2' |
|
* range 관련 기본타입이 string인 경우 text field로 인식되어 정상적으로 검색이 안됨. 이런 경우 index로 바꿔주고 검색을 할 수 있음. 변환처리 아래 URL 참조 myhappyman.tistory.com/223?category=966871 |
|||
sort (몽고 db에서 string으로 처리되어 elasticSearch에서 text filed로 인식되면 sort가 불가능함) |
{ "sort": [ { "필드명" : "desc" }, "_score" ], "query": { "match_all":{} } } |
select * from table order by 필드명 desc |
|
regexp | { "query": { "regexp":{ "필드명": ".*값.*" } } } |
like문과 유사하지만 완전 다름 | |
. : 모든 문자열을 뜻한다. * : 0개 이상의 자리수를 갖는 문자열 0개 이상의 모든 문자열을 찾는 쿼리 |
단순 총 리스트의 개수 가져오기
GET /<target>/_count
반응형
'Databases > Elasticsearch' 카테고리의 다른 글
Monstache - 특정 mongoDB 컬렉션 연동 제외하기 (0) | 2021.07.14 |
---|---|
Elasticsearch - 풀 텍스트 쿼리(match, match_phrase, regexp) (0) | 2021.03.26 |
Elasticsearch - index 변경하기 (맵핑 정보 타입변경하기, resource_already_exists_exception) (0) | 2021.03.26 |
Docker를 통해 Elasticsearch, mongoDB, Monstache 환경 구성해보기(도커(엘라스틱서치+몽고DB+몬스태치)) (3) | 2021.03.05 |
Elasticsearch - CRUD 진행해보기(조회, 삽입, 수정, 삭제) (0) | 2021.03.03 |