You can do that by writing a Filter which returns matching documents based
on a sum of the field's value. However I suspect that is going to be slow,
unless you know that you will need several such filters and can cache them.

Another approach would be to write a Collector which serves as a Filter,
but computes the sum only for documents that match the query. Hopefully
that would mean you compute the sum for less documents than you would have
w/ the Filter approach.

Shai


On Wed, Apr 23, 2014 at 5:11 PM, Michael Sokolov <
msoko...@safaribooksonline.com> wrote:

> This isn't really a good use case for an index like Lucene.  The most
> essential property of an index is that it lets you look up documents very
> quickly based on *precomputed* values.
>
> -Mike
>
>
> On 04/23/2014 06:56 AM, Rob Audenaerde wrote:
>
>> Hi all,
>>
>> I'm looking for a way to use multi-values in a filter.
>>
>> I want to be able to search on  sum(field)=100, where field has values in
>> one documents:
>>
>> field=60
>> field=40
>>
>> In this case 'field' is a LongField. I examined the code in the
>> FieldCache,
>> but that seems to focus on single-valued fields only, or
>>
>>
>> It this something that can be done in Lucene? And what would be a good
>> approach?
>>
>> Thanks in advance,
>>
>> -Rob
>>
>>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: java-user-unsubscr...@lucene.apache.org
> For additional commands, e-mail: java-user-h...@lucene.apache.org
>
>

Reply via email to