2011-03-14 17 views
11

我想在solr響應的過濾器查詢(fq)中傳遞逗號分隔值,當前當我想要傳遞多個類別時,我使用OR運算符。 這樣FQ =的categoryId:3或的categoryId:55的categoryId:34在solr響應的過濾器查詢中傳遞逗號分隔值

有沒有什麼解決辦法將值傳遞一樣FQ =的categoryId:3,55,34

回答

18

fq=categoryId:(3 55 34)應該工作,如果您的默認運算符是OR 。否則,請嘗試fq=categoryId:(3 OR 55 OR 34)。這在Lucene查詢語法中稱爲Field Grouping。 (Solr支持完整的Lucene語法,如文檔here所示。)

0

如果您的過濾器查詢字段是文本或字符串類型,您也可以使用fq = categoryId:(IN 3 55 34 44)。但是IN運算符不能使用整數文件或其他字符串/文本字段。