web-dev-qa-db-ja.com

SolrでINクエリを実行する方法

ドキュメントが共有されているグループを含む複数値フィールド「sharedTo」を持つドキュメントがあります。ここで、特定のグループのリストの少なくとも1つに共有されているすべてのドキュメントを検索したいと思います。例えば。グループ「foo」またはグループ「bar」、あるいはその両方に共有されているすべてのドキュメントを検索したい。現在、私はこのようなクエリを作成しています:

sharedTo:"foo" OR sharedTo:"bar"

グループごとに、新しいORクエリパーツを追加します。これは機能しますが、これを行うより効率的な方法があるかどうか疑問に思います。

sharedTo IN ('foo', 'bar')
30
Jan Thomä

デフォルトの演算子がORの場合、クエリを次のように指定できます

sharedTo :( 'foo' 'bar')

デフォルトの演算子がANDの場合は、次のようにする必要があります。sharedTo:(foo OR bar)

59
Umar

上記の解決策は私にとってはうまくいきませんでした。しかし、この構文は

column_name:+(value1 value2)

http://harmssite.com/2012/09/solr-query-for-mimicking-sql-in-operator-functionality/

0
gilango