誰能告訴我,爲什麼這些Solr的查詢將返回截然不同的結果:Solr Facet Filter - q vs fq返回不同的結果?
q=BBC+Food&fq=Source:"BBC-WORLDWIDE"
和
q=(BBC+Food)+AND+(Source:"BBC-WORLDWIDE")
第一返回6個結果,而後者58
誰能告訴我,爲什麼這些Solr的查詢將返回截然不同的結果:Solr Facet Filter - q vs fq返回不同的結果?
q=BBC+Food&fq=Source:"BBC-WORLDWIDE"
和
q=(BBC+Food)+AND+(Source:"BBC-WORLDWIDE")
第一返回6個結果,而後者58
事實證明,第一個查詢是搜索包含BBC和Food兩個詞的文檔。第二個查詢是使用OR邏輯搜索任一個單詞。
通過將關鍵字放在括號中,並將其與任何其他子句結合起來,Solr似乎是顛倒了關鍵字的隱含「AND」邏輯,而是應用了「OR」邏輯。
下列查詢演示好這一點:
Q =(BBC +食品)
Q =(BBC +食品)+和+(BBC +食品)
他們都返回了非常不同的結果,因爲關鍵字已反轉邏輯。
你可以添加&debugQuery=on
到查詢結束並查看調試輸出中的值是否能夠深入瞭解這兩個查詢之間的差異?
你使用的是迪士高嗎? –