You just need two clauses, something like
q=field:yes (field:* -field:[* TO *])

fq could work here too.


Best
Erick


On Fri, Nov 25, 2011 at 10:06 AM, Phil Hoy <p...@friendsreunited.co.uk> wrote:
> Hi,
>
> Thanks for getting back to me, and sorry the default q value was *:* so I 
> omitted it from the example.
>
> I do not have a problem getting the null values so q=*:*&fq=-field:[* TO *] 
> indeed works but I also need the docs with a specific value e.g. 
> fq=field:yes. Is this possible?
>
> Phil
>
> -----Original Message-----
> From: Erick Erickson [mailto:erickerick...@gmail.com]
> Sent: 25 November 2011 13:59
> To: solr-user@lucene.apache.org
> Subject: Re: Query a field with no value or a particular value.
>
> You haven't specified any "q" clause, just an "fq" clause. Try
> q=*:* -field:[* TO *]
> or
> q=*:*&fq=-field:[* TO *]
>
> BTW, the logic of field:yes -field:[* TO *] makes no sense
> You're saying "find me all the fields containing the value "yes" and
> remove from that set all the fields containing any value at all"....
>
> Best
> Erick
>
> On Fri, Nov 25, 2011 at 7:28 AM, Phil Hoy <p...@friendsreunited.co.uk> wrote:
>> Hi,
>>
>> Is it possible to constrain the results of a query to return docs were a 
>> field contains no value or a particular value?
>>
>> I tried  ?fq=(field:yes OR -field:[* TO *]) but I get no results even though 
>> queries with either ?fq=field:yes or ?fq=-field:[* TO *]) do return results.
>>
>>
>> Phil
>>
>
> ______________________________________________________________________
> This email has been scanned by the brightsolid Email Security System. Powered 
> by MessageLabs
> ______________________________________________________________________
>

Reply via email to