&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. >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>> >>>> >>> >> >