I'm building an e-commerce search and I am using Lucene.Net as my search engine. I am having trouble filtering my queries, though.
This is one of the documents I have indexed, with the following fields and values:
field: "name", value: "Mochila MVP"
field: "manufacturer", value: "Nike Accessories"
Now, when I run these searches I have the folowing results:
User typed query:
mochila^5 nike^2.5
Lucene translated it to:
(((name:mochil manufacturer:mochil)^5.0) ((name:nik manufacturer:nik)^2.5))
Results:
Brings the product "Mochila MVP"
User typed query:
mochila^5 AND nike^2.5
Lucene translated it to:
(+((name:mochil manufacturer:mochil)^5.0) +((name:nik manufacturer:nik)^2.5))
Results:
No results
User typed query:
mochila^5 +manufacturer:nike
Lucene translated it to:
((name:mochil)^5.0) +manufacturer:nike
Results:
No results
What I would like to know is why the second and third queries bring no results, because they seem to match the product's name and manufacturer to me...
Any help is highly appreciated. Thanks in advance!