Hi Alessandro,

Thanks for the suggestion.

The issue is that, without the double quotes, query like “ field: ola hello hi 
” parses into “ field: ola (text:hello text:hi) ”. Which means that it is 
breaking in space and considering only first one. And all parts are or to each 
other. Wrapping in double quotes, solves the issue.

Is this the default behaviour?

Thanks,
Subhajit

From: Alessandro Benedetti<mailto:a.benede...@sease.io>
Sent: 24 March 2021 12:06 AM
To: users@solr.apache.org<mailto:users@solr.apache.org>
Cc: solr-u...@lucene.apache.org<mailto:solr-u...@lucene.apache.org>
Subject: Re: StrField not matching content "equals" way

Hi Subhajit,
that's weird, if you use StrField no text analysis happens.
This means in the inverted index a single token is built for the text "abc
xyz".
So neither the query field:xyz neither the phrase query field:"xyz" is
supposed to return you such document.

I would recommend running the query with debug=query enabled in the request
parameters (
https://solr.apache.org/guide/6_6/common-query-parameters.html#CommonQueryParameters-ThedebugParameter
 )
In this way, we'll see how the query is parsed and the real fields involved
in the query.

Cheers
--------------------------
Alessandro Benedetti
Apache Lucene/Solr Committer
Director, R&D Software Engineer, Search Consultant
www.sease.io<http://www.sease.io>


On Tue, 23 Mar 2021 at 17:39, Subhajit Das <subhajitdas...@live.com> wrote:

>
> Hi,
>
> I have a field with type string (StrField). The data in it is like “abc
> xyz”. But when I search for “xyz”, I am getting one document containing
> “abc xyz”.
>
> Using q and fq is same for this.
>
> When I filter like field=”xyz” it works, but field=xyz dosen’t.
>
> Thanks and Regards,
> Subhajit
>

Reply via email to