web-dev-qa-db-ja.com

Apache Solr-ORフィルタークエリ

フィルタークエリを使用して、いくつかのカテゴリの1つにあるアイテムを(Apache Solrで)検索することは可能ですか?カテゴリ「computers」のアイテムOR 'phones'

カテゴリーのコンピューターと電話でアイテムを検索したい場合、次のように入力します。

select/?q=...&fq=cat:computers&fq=cat:phones

しかし、ORの代わりにANDを使用することは可能ですか?

38
krinn

使用できます

fq=cat:(computers OR phones)
62
Jayendra

フィルタークエリは単なるクエリであり、必要なだけ複雑です。そのため、クエリを確実に構築できます。たとえば、

fq=(cat1:val1 OR cat2:val2 OR (cat3:(val3 AND val4)))

...または何でも。

フィルタークエリと通常のクエリ(メモリとキャッシュの問題を考慮する必要があります)の唯一の違いは、フィルタークエリが関連性スコアにまったく影響しないことです。しかし、複雑さの面では、あなたがやりたいことができます。

45
Bill Dueber