I had been experimenting with bq.

I switched to boost like you suggested, and get the following error
from solr: "can not use FieldCache on multivalued field: genre"

But that sounds like the solution I'd want, if it worked, since it's
more flexible than having to reindex.

On Mon, Oct 31, 2011 at 10:41 AM, Erik Hatcher <erik.hatc...@gmail.com> wrote:
> Paul - look at debugQuery=true output to see why scores end up the way they 
> do.  Use the explainOther to hone in on a specific document to get it's 
> explanation.  The math'll tell you why it's working the way it is.  It's more 
> than just likely that some other scoring factors are overweighting things.
>
> Also, now that I think about it, you'd be better off leveraging edismax and 
> the boost parameter.  Don't mess with your main q(uery), use 
> boost=genre:Citation^0.01 or something like that.  boost params (not bq!) are 
> multiplied into the score, not added.  Maybe that'll be more to your liking?
>
>        Erik
>
>
> On Oct 31, 2011, at 10:19 , Paul wrote:
>
>> Thanks Erik. They don't need to absolutely always be the bottom-most
>> -- just not near the top. But that sounds like an easy way to do it,
>> especially since it is a lot easier to reindex now than it used to be.
>>
>> I would like to know why my query had no effect, though. There's
>> obviously something I don't get about queries.
>>
>> On Mon, Oct 31, 2011 at 10:08 AM, Erik Hatcher <erik.hatc...@gmail.com> 
>> wrote:
>>> Paul (*bows* to the NINES!) -
>>>
>>> If you literally want Citations always at the bottom regardless of other 
>>> relevancy, then perhaps consider indexing boolean top_sort as true for 
>>> everything Citations and false otherwise, then use &sort=top_sort asc,score 
>>> desc (or do you need to desc top_sort?  true then false or false then true?)
>>>
>>> Then you can have Citations literally at the bottom (and within that sorted 
>>> in score order) and likewise with non-Citations at the top and sorted score 
>>> order within that.  Other tricks still risk having Citations mixed in 
>>> should relevancy score be high enough.
>>>
>>> The morale of this story is: if you want to hard sort by something, then 
>>> make a sort field that does it how you like rather than trying to get 
>>> relevancy scoring to do it for you.
>>>
>>>        Erik
>>>
>>>
>>> On Oct 28, 2011, at 17:17 , Paul wrote:
>>>
>>>> (I am using solr 3.4 and edismax.)
>>>>
>>>> In my index, I have a multivalued field named "genre". One of the
>>>> values this field can have is "Citation". I would like documents that
>>>> have a genre field of Citation to always be at the bottom of the
>>>> search results.
>>>>
>>>> I've been experimenting, but I can't seem to figure out the syntax of
>>>> the search I need. Here is the search that seems most logical to me
>>>> (newlines added here for readability):
>>>>
>>>> q=%2bcontent%3Anotes+genre%3ACitation^0.01
>>>> &start=0
>>>> &rows=3
>>>> &fl=genre+title
>>>> &version=2.2
>>>> &defType=edismax
>>>>
>>>> I get the same results whether I include "genre%3ACitation^0.01" or not.
>>>>
>>>> Just to see if my names were correct, I put a minus sign before
>>>> "genre" and it did, in fact, stop returning all the documents
>>>> containing Citation.
>>>>
>>>> What am I doing wrong?
>>>>
>>>> Here are the results from the above query:
>>>>
>>>> <response>
>>>>  <lst name="responseHeader">
>>>>    <int name="status">0</int>
>>>>    <int name="QTime">1</int>
>>>>    <lst name="params">
>>>>      <str name="fl">genre title </str>
>>>>      <str name="start">0</str>
>>>>      <str name="q">+content:notes genre:Citation^0.01</str>
>>>>      <str name="rows">3</str>
>>>>      <str name="version">2.2</str>
>>>>      <str name="defType">edismax</str>
>>>>    </lst>
>>>>  </lst>
>>>>  <result name="response" numFound="1276" start="0">
>>>>    <doc>
>>>>      <arr name="genre"><str>Citation</str><str>Fiction</str></arr>
>>>>      <str name="title">Notes on novelists With some other notes</str>
>>>>    </doc>
>>>>    <doc>
>>>>      <arr name="genre"><str>Citation</str></arr>
>>>>      <str name="title">Novel notes</str>
>>>>    </doc>
>>>>    <doc>
>>>>      <arr name="genre"><str>Citation</str></arr>
>>>>      <str name="title">Knock about notes</str>
>>>>    </doc>
>>>>  </result>
>>>> </response>
>>>
>>>
>
>

Reply via email to