usage - query in query elasticsearch



elasticsearch에서 Query DSL의 필수 필터와 차이점은 무엇입니까? (1)

나는 신축성있는 검색에 익숙하지 않아야하며 필히 필자와 필터를 혼동합니다. 내 용어 사이에 연산을 수행하고 싶다. 그래서 나는 이것을했다.

POST / xyz / _search

{
    "query": {
        "bool": {
            "must": [
                {
                    "term": {
                        "city": "city1"
                    }
                },
                {
                    "term": {
                        "saleType": "sale_type1"
                    }
                }
            ]
        }
    }
}

나에게 조건과 일치하는 필수 결과를 주었고, 이와 같은 필터를 사용할 때

POST / xyz / _search

{
    "query": {
        "bool": {
            "must": [
                {
                    "term": {
                        "city": "city1"
                    }
                }
            ],
            "filter": {
                "term": {
                    "saleType": "sale_type1"
                }
            }
        }
    }
}

나는 동일한 결과를 얻었으므로 언제 사용해야하며 언제 필터를 사용해야합니까? 그 차이점은 무엇입니까?


must 점수에 기여 must . filter 에서 쿼리의 점수는 무시됩니다.

mustfilter 모두에서 절 (쿼리)이 일치하는 문서에 나타나야합니다. 이것은 동일한 결과를 얻는 이유입니다.

link 확인할 수 있습니다.

점수

각 문서의 관련성 점수는 _score 라는 양수 부동 소수점 숫자로 표시됩니다. _score 높을수록 문서의 관련성이 높아집니다.

쿼리 절은 각 문서에 대해 _score 를 생성합니다.

점수 계산 방법을 알아 보려면이 link 참조하십시오.





querydsl