&q=chairs AND (regularprice:*^5 OR (*:* -regularprice:*)^0.5)&sort=score desc


Same effect.


On Mon, May 14, 2012 at 4:12 PM, Jack Krupansky <j...@basetechnology.com>wrote:

> Change the second boost to 0.5 to de-boost doc that are missing the field
> value. You had them the same.
>
> -- Jack Krupansky
>
> -----Original Message----- From: Donald Organ
> Sent: Monday, May 14, 2012 4:01 PM
> To: solr-user@lucene.apache.org
> Subject: Re: Boosting on field empty or not
>
> OK it looks like the query change is working but it looks like it boosting
> everything even documents that have that field empty....
>
> On Mon, May 14, 2012 at 3:41 PM, Donald Organ <dor...@donaldorgan.com
> >wrote:
>
>  OK i must be missing something:
>>
>>
>> defType=edismax&start=0&rows=**24&facet=true&qf=nameSuggest^**10 name^10
>> codeTXT^2 description^1 brand_search^0 cat_search^10&spellcheck=true&**
>> spellcheck.collate=true&**spellcheck.q=chairs&facet.**
>> mincount=1&fl=code,score&q=**chairs AND (regularprice:*^5 OR (*:*
>> -regularprice:*)^5)&sort=score desc
>>
>>
>> On Mon, May 14, 2012 at 3:36 PM, Jack Krupansky <j...@basetechnology.com>
>> **wrote:
>>
>>  "(*:* -regularprice:*)5" should be "(*:* -regularprice:*)^0.5" - the
>>> missing boost operator.
>>>
>>> -- Jack Krupansky
>>>
>>> -----Original Message----- From: Donald Organ
>>> Sent: Monday, May 14, 2012 3:31 PM
>>> To: solr-user@lucene.apache.org
>>> Subject: Re: Boosting on field empty or not
>>>
>>> Still doesnt appear to be working.  Here is the full Query string:
>>>
>>>
>>> defType=edismax&start=0&rows=****24&facet=true&qf=nameSuggest^****10
>>> name^10
>>> codeTXT^2 description^1 brand_search^0
>>> cat_search^10&spellcheck=true&****spellcheck.collate=true&**
>>> spellcheck.q=chairs&facet.****mincount=1&fl=code,score&q=****chairs
>>> AND (regularprice:*^5 OR (*:* -regularprice:*)5)
>>>
>>>
>>> On Mon, May 14, 2012 at 3:28 PM, Jack Krupansky <j...@basetechnology.com
>>> >
>>> **wrote:
>>>
>>>  Sorry, make that:
>>>
>>>>
>>>> &q=chairs AND (regularprice:*^5 OR (*:* -regularprice:*)^0.5)
>>>>
>>>> I forgot that pure negative queries are broken again, so you need the
>>>> *:*
>>>> in there.
>>>>
>>>> I noticed that you second boost operator was missing as well.
>>>>
>>>> -- Jack Krupansky
>>>>
>>>> -----Original Message----- From: Donald Organ
>>>> Sent: Monday, May 14, 2012 3:24 PM
>>>> To: solr-user@lucene.apache.org
>>>> Subject: Re: Boosting on field empty or not
>>>>
>>>> OK i just tried:
>>>>
>>>> &q=chairs AND (regularprice:*^5 OR (-regularprice:*)5)
>>>>
>>>>
>>>> And that gives me 0 results
>>>>
>>>>
>>>> On Mon, May 14, 2012 at 2:51 PM, Jack Krupansky <
>>>> j...@basetechnology.com
>>>> >*
>>>> *wrote:
>>>>
>>>>  foo AND (field:*^2.0 OR (-field:*)^0.5)
>>>>
>>>>
>>>>> So, if a doc has anything in the field, it gets boosted, and if the doc
>>>>> does not have anything in the field, de-boost it. Choose the boost
>>>>> factors
>>>>> to suit your desired boosting effect.
>>>>>
>>>>> -- Jack Krupansky
>>>>>
>>>>> -----Original Message----- From: Donald Organ
>>>>> Sent: Monday, May 14, 2012 2:38 PM
>>>>> To: solr-user@lucene.apache.org
>>>>> Subject: Re: Boosting on field empty or not
>>>>>
>>>>> OK maybe i need to describe this a little more.
>>>>>
>>>>> Basically I want documents that have a given field populated to have a
>>>>> higher score than the documents that dont.  So if you search for foo I
>>>>> want
>>>>> documents that contain foo, but i want the documents that have field a
>>>>> populated to have a higher score...
>>>>>
>>>>> Is there a way to do this?
>>>>>
>>>>>
>>>>>
>>>>> On Mon, May 14, 2012 at 2:22 PM, Jack Krupansky <
>>>>> j...@basetechnology.com
>>>>> >*
>>>>> *wrote:
>>>>>
>>>>>  In a query or filter query you can write +field:* to require that a
>>>>> field
>>>>>
>>>>>  be populated or +(-field:*) to require that it not be populated
>>>>>
>>>>>>
>>>>>> -- Jack Krupansky
>>>>>>
>>>>>> -----Original Message----- From: Donald Organ
>>>>>> Sent: Monday, May 14, 2012 2:10 PM
>>>>>> To: solr-user
>>>>>> Subject: Boosting on field empty or not
>>>>>>
>>>>>> Is there a way to boost a document based on whether the field is empty
>>>>>> or
>>>>>> not.  I am looking to boost documents that have a specific field
>>>>>> populated.
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>
>>>
>>
>

Reply via email to