OR/AND を使用して関数クエリを実行しようとしていますが、これには制限があるようです。実行しようとしているクエリに相当する SQL のロジックは次のとおりです。
ABS(col1-:val1)<1 OR (col1 IS NULL AND ABS(col2-:val1)<1)
これは、ABS の差が 1 未満のドキュメントを取得するための、現在作業中の fq クエリです。
fq={!frange l=0 u=1}abs(sub(col1,val1))
これが私が実行しようとしているものですが、エラーなしではできません
fq={!frange l=0 u=1}abs(sub(col1,val1)) OR (-col1:[* TO *] AND {!frange l=0 u=1}abs(sub(col2,val1)))
関数クエリを使用する場合、同じ fq で and AND または and OR を使用することはできないようです。どうすればこれを行うことができますか?私はsolr 4.1を使用しています。ありがとう