オプション ("should" 句) の必須トークンと禁止トークンを含むクエリがあります。次の 2 つのクエリは、異なる結果を返します。しかし、同じであるべきではありませんか?
+_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))"
この書類を返してください。なぜ?