This may help:
http://lucene.apache.org/java/2_4_0/queryparsersyntax.html#Boolean%20operators

But the clause you specified translates roughly as "find all the
documents that contain R, then remove any of them that match
"* TO *". * TO * contains all the documents with R, so everything
you just matched is removed from your results.

HTH
Erick

On Tue, Jun 29, 2010 at 12:40 PM, Sascha Szott <sz...@zib.de> wrote:

> Hi Ahmet,
>
> it works, thanks a lot!
>
> To be true I have no idea what's the problem with
> defType=lucene&q.op=OR&df=topic&q=R NOT [* TO *]
>
> -Sascha
>
>
> Ahmet Arslan wrote:
>
>> I have a (multi-valued) field topic in my index which does
>>> not need to exist in every document. Now, I'm struggling
>>> with formulating a query that returns all documents that
>>> either have no topic field at all *or* whose topic field
>>> value is R.
>>>
>>
>> Does this work?
>> &defType=lucene&q.op=OR&q=topic:R (+*:* -topic:[* TO *])
>>
>>

Reply via email to