선택적 ("should"절) 필수 및 금지 토큰을 포함하는 쿼리가 있습니다. 다음 두 쿼리는 다른 결과를 반환합니다. 하지만 동일해야하지, 그렇지 않아?Solr Dismax 및 Edismax 요청이 동일한 쿼리에 대해 다른 결과를 표시합니다.
+_query_:"{!type=**dismax** mm='2<2 3<3 5<4 7<51%' qf='normalizedField'} opt1 opt2 +mandatory -prohibited"
VS
」할 '검색 파라미터 최소+_query_:"{!type=**edismax** mm='2<2 3<3 5<4 7<51%' qf='normalizedField'} opt1 opt2 +mandatory -prohibited"
:
mm "2 < 2 3 < 3-5 < 4~7 < 51 %"
아이디어가 있으십니까? 감사합니다
업데이트 SOLR 지수의 문서가있다 :
{
...
"normalizedField":"opt1 opt3 mandatory"
...
}
dismax 쿼리 검색 :
+_query_:"{!type=dismax mm='2<2 3<3 5<4 7<51%' qf='normalizedField'} opt1 opt2 +mandatory -prohibited"
"parsedquery_toString":"+(((normalizedField:opt1) (normalizedField:opt2) +(normalizedField:mandatory) -(normalizedField:prohibited))~2)()"
반환 빈 결과 (예상대로)
는하지만
edismax 쿼리 검색 :
+_query_:"{!type=edismax mm='2<2 3<3 5<4 7<51%' qf='normalizedField'} opt1 opt2 +mandatory -prohibited"
"parsedquery_toString": "+((normalizedField:opt1) (normalizedField:opt2) +(normalizedField:mandatory) -(normalizedField:prohibited))"
수익이 문서를. 왜?
dismax는 예상대로 작동하지만 edisamax가 아닙니다 ( –