On Fri, Oct 9, 2015, at 09:54 AM, Colin Hunter wrote:
> Hi
> 
> I am working on a complex search utility with an index created via data
> import from an extensive MySQL database.
> There are many ways in which the index is searched. One of the utility
> input fields searches only on a Service Name. However, if I target the
> query as q=ServiceName:"Searched service", this only returns an exact
> string match. If q=Searched Service, the query still returns results from
> all indexed data.
> 
> Is there a way to construct a query to only return results from one field
> of a doc ?
> I have tried setting index=false, stored=true on unwanted fields, but
> these
> appear to have still been returned in results.

q=ServiceName:(Searched Service)

That'll look in just one field.

Remember changing indexed to false doesn't impact the stuff already in
your index. And the reason you are likely getting all that stuff is
because you have a copyField that copies it over into the 'text' field.
If you'll never want to search on some fields, switch them to
index=false, make sure you aren't doing a copyField on them, and then
reindex.

Upayavira

Reply via email to