Table of Contents
Elasticsearch must must_not should filter
query
GET <인덱스명>/_search
{
"query": {
"bool": {
"must": [
{ <쿼리> }, …
],
"must_not": [
{ <쿼리> }, …
],
"should": [
{ <쿼리> }, …
],
"filter": [
{ <쿼리> }, …
]
}
}
}
must
쿼리가 모두 참인 문서만 검색합니다.(AND)
must_not
쿼리가 모두 거짓인 문서만 검색합니다.(AND)
should
쿼리중 하나만 만족하면 검색합니다.(OR)
많은 쿼리가 부합할 수록 score 가 증가합니다.
filter
쿼리가 모두 참인 문서만 검색합니다.(AND)
스코어를 산정하지 않습니다.
must 보다 속도가 빠릅니다.
또한 캐시가 이루어집니다.
https://knight76.tistory.com/m/entry/elasticsearch-Query-vs-Filter-Cache
https://techblog.woowahan.com/7425/