我使用包含文檔共享組的多值字段「sharedTo」的文檔。現在我想查找共享給給定組列表中至少一個的所有文檔。例如。我想查找共享給組「foo」或組「bar」或兩者的所有文檔。目前,我正在構建如下查詢:如何在Solr中進行IN查詢?
sharedTo:"foo" OR sharedTo:"bar"
對於每個組,我只是添加一個新的OR查詢部分。這工作,但我不知道是否有這樣做就像一個
sharedTo IN ('foo', 'bar')
我使用包含文檔共享組的多值字段「sharedTo」的文檔。現在我想查找共享給給定組列表中至少一個的所有文檔。例如。我想查找共享給組「foo」或組「bar」或兩者的所有文檔。目前,我正在構建如下查詢:如何在Solr中進行IN查詢?
sharedTo:"foo" OR sharedTo:"bar"
對於每個組,我只是添加一個新的OR查詢部分。這工作,但我不知道是否有這樣做就像一個
sharedTo IN ('foo', 'bar')
如果您的默認運算符是OR的一個更有效的方式,那麼你可以給查詢作爲
sharedTo :('富'‘酒吧’)
如果您的默認運算符是AND,那麼你就必須做到這一點是這樣的:sharedTo:(FOO或酒吧)
上述解決方案沒有工作FO我。但是,這句法做
列名:+(值值2)
http://harmssite.com/2012/09/solr-query-for-mimicking-sql-in-operator-functionality/
完美的作品。謝謝! – 2011-05-11 21:08:37
您應該在值的內部括號而不是逗號之間使用空格。 – 2012-09-13 10:39:46
感謝@parvin指出。逗號可能取決於分析儀,但空間是一種更合適的方式。 – Umar 2012-09-14 05:02:04