Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

solr query with white space

Tags:

solr

I search for a word and I get the results with facet as follows:

<lst name="itemtype"> <int name="Internal">108</int> <int name="Users">73</int> <int name="Factory">18</int> <int name="Supply Chain Intermediaries">6</int> <int name="Company">1</int> <int name="Monitor/Auditor firm">0</int> </lst> 

Then I wrote the condition like fq=itemtype:Factory. I get the results. But I am not getting the results for fq=itemtype:Supply Chain Intermediaries.
I am thinking the problem rests with the spaces in the condition (Supply Chain Intermediaries). I tried with urlencode (to replace spaces with %20) also. But it's of no use. Can you guys please help me to solve this?

Update:

For single value it is working fine. I build the query like this:

http:localhost:8080/solr/select/?q=adidas&version=2.2&indent=on&facet=on&start=0&rows=20&fq={!raw f=itemtype}Supply Chain Intermediaries 

But i need to write for multiple values. The original Query with out raw is as follows

http://localhost/solr/select/?q=adidas&version=2.2&indent=on&facet=on&start=0&rows=20&fq=(itemtype:Company itemtype:Supply Chain Intermediaries) 

Can you guys please help me to solve this.

like image 560
Brahmaji Rao Avatar asked Apr 26 '11 12:04

Brahmaji Rao


1 Answers

How is your itemtype field analysed?

If it is of type string , then use:

fq=itemtype:"Supply Chain Intermediaries" 

Otherwise you can also try:

fq=itemtype:(Supply Chain Intermediaries) 

Assuming OR is the default operator in your config and text is the default search field, your query will get translated to:

fq=itemtype:Supply OR text:(Chain Intermediaries) 

Chain and Intermediaries are searched against default search field.

like image 118
Umar Avatar answered Oct 03 '22 09:10

Umar