2011-09-29 20 views
32

Filtre sorgusu kullanarak birkaç kategoriden birindeki öğeler için (apache Solr ile) arama yapmak mümkün mü? kategorisi 'bilgisayarlarda' VEYA öğeler 'telefonları' Apache Solr - OR filtre sorgusunda

Ben kategori bilgisayarlar VE telefonları yazarken öğeleri aramak istediğiniz

:

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

ama OR yerine AND kullanmak mümkündür?

cevap

55

Sen bir filtre sorgusu sadece sorgu

fq=cat:(computers OR phones) 
+0

Merhaba param var = {start = 1 & q = file_content +: + cześć * & wt = javabin & fq = dosya_create_user: \ - 1 + AND + file_parents_folder: \ (341 \ + AND \ +4222 \) & version = 2 & satır = 25} status = 400 QTime = 2 ve halim var Hatalı Numara: (341 AND 4222) –

39

kullanabilirsiniz - kompleks olarak istediğiniz gibi. Yani, bir sorguyu, ör.

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

... ya da her neyse yapabilirsiniz.

Bir süzgeç sorgusu ile eski bir sorgu (bellek ve önbellekleme sorunlarının yanı sıra üzerinde düşünmek isteyebileceğiniz) arasındaki tek fark, bir filtre sorgusunun alaka düzeyi puanlarını etkilememesidir. Ama karmaşıklık açısından, ne istersen yapabilirsin.