我想在Solr中的文本字段上執行搜索。我想返回一個範圍內或沒有價值的所有比賽。這兩個搜索詞是獨立的:在Solr中搜索日期範圍或空/無字段
myfield:[start TO finish]
-myfield:[* TO *]
第一個返回範圍內的所有匹配。第二個返回所有對「myfield」字段沒有值的匹配。 問題在於將這兩者結合在一起。
這沒有返回比賽:
myfield:[start TO finish] OR -myfield:[* TO *]
這將返回起點和終點之間的匹配,而不是空條目:
myfield:[start TO finish] OR (-myfield:[* TO *])
嘗試[this](http://stackoverflow.com/questions/634765/using-or-and-not-in-solr-query/)。 – 2009-08-28 01:45:13
@samkass:同意,Solr應該檢測到這一點,並在內部將表達式重寫爲它可以處理的內容。 – 2013-09-06 18:55:43
有沒有人將此文件作爲Solr JIRA中的錯誤進行存檔?我沒有看到任何理由爲什麼正邏輯版本不應該工作。 – samkass 2013-09-06 17:53:10