web-dev-qa-db-ja.com

SolrでNOT INクエリを行う方法は?

Solr結果セットからドキュメントIDのセットを除外するにはどうすればよいですか?基本的には次のようなもの

/select?q=tag_id:367 AND NOT id:(306670,302209)

私は試してみましたが、それらのIDを持つドキュメントは除外されません。

20
arun

これを試して:

/select?q=*:*&fq=tag_id:367 AND id:[* TO *] -id:(306670 302209)

これにより、IDを削除するたびに-id:302209を追加する必要なく、必要な数のIDを追加して構築できます。逆も当てはまります。-+と入れ替えて、値の配列も強制的に存在させることができます。

28
harmstyler

1つの解決策が見つかりました:

/select?q=tag_id:367&fq=-id:306670 AND -id:302209

これがそれを行うための最良の方法であるかどうかわかりません!

8
arun