You are viewing a plain text version of this content. The canonical link for it is here.
Posted to solr-user@lucene.apache.org by ivan <iv...@presstoday.com> on 2018/02/12 11:54:12 UTC
Search for a word NOT followed by another on a Solr query
What i'm trying to do is to only get results for "Leonardo" when is not
followed by "da vinci".
If i have "Leonardo da vinci" in my result is fine as long as i have another
"Leonardo" without "da vinci".
Examples:
"Leonardo foo bar" OK
"Leonardo da vinci foo bar" KO
"Leonardo foo bar Leonardo da vinci" OK
I can't seem to find any way to do this using solr queries, because if i do
something like -"Leonardo da vinci" i lose all results where i have both
"Leonardo" and "Leonardo da vinci". I tried using various combinations of
boolean logic but can't get it to work.
Any help?
Thanks
--
Sent from: http://lucene.472066.n3.nabble.com/Solr-User-f472068.html
Re: Search for a word NOT followed by another on a Solr query
Posted by Emir Arnautović <em...@sematext.com>.
Hi Ivan,
You might be able to use complexphrase query parser to get what you need, you can test something like this:
{!complexphrase df=my_field}”Leonardo -(da Vinci)”
HTH,
Emir
--
Monitoring - Log Management - Alerting - Anomaly Detection
Solr & Elasticsearch Consulting Support Training - http://sematext.com/
> On 12 Feb 2018, at 14:29, ivan <iv...@presstoday.com> wrote:
>
> Markus Jelsma-2 wrote
>> You can abuse phrase query for that, q=leonardo AND -"leonardo da vinci"
>> (asuming you have a proper default field set).
>>
>> Markus
>
> This way i'm losing results where i have both "Leonardo" and "Leonardo da
> vinci in the same field, see example number 3 "Leonardo foo bar Leonardo da
> vinci".
> I want this case to match and with your query i'm not getting it.
>
>
>
> --
> Sent from: http://lucene.472066.n3.nabble.com/Solr-User-f472068.html
RE: Search for a word NOT followed by another on a Solr query
Posted by ivan <iv...@presstoday.com>.
Markus Jelsma-2 wrote
> You can abuse phrase query for that, q=leonardo AND -"leonardo da vinci"
> (asuming you have a proper default field set).
>
> Markus
This way i'm losing results where i have both "Leonardo" and "Leonardo da
vinci in the same field, see example number 3 "Leonardo foo bar Leonardo da
vinci".
I want this case to match and with your query i'm not getting it.
--
Sent from: http://lucene.472066.n3.nabble.com/Solr-User-f472068.html