如何在两个块连接子句之间执行OR。
例如:我想找到所有包含短语" abc def"或者" hij lmn"
这里的假设是" abc def"和" hij lmn"在不同的子文档中,所有父文档都有标识符doc_type:parent
逻辑上,查询将是:
({!parent which="doc_type:parent"}"abc def") OR ({!parent which="doc_type:parent"}"hij lmn")
。
此查询将抛出
EOF .org.apache.solr.search.SyntaxError:无法解析' \" abc':Lexical 第1行第5列错误。
遇到:之后: \" \\" abc \""错误。
我无法与fq合并,因为我在这里有一个OR运算符。我们如何解决这个问题?
答案 0 :(得分:2)
在块连接构造之后尝试使用单个空格 例如 ({!parent which =“doc_type:parent”}“abc def”)或({!parent which =“doc_type:parent”}“hij lmn”)
答案 1 :(得分:0)
Yonik Seeley在以下链接中回答了这个问题 http://comments.gmane.org/gmane.comp.jakarta.lucene.solr.user/95646
轻松引用答案: ({!parent which =" doc_type:parent" v ='" abc def"'}) 要么 ({!parent which =" doc_type:parent" v ='" hij lmn"'})