Lucy::Search::RangeQuery - Match a range of values.
# Match all articles by "Foo" published since the year 2000. my $range_query = Lucy::Search::RangeQuery->new( field => 'publication_date', lower_term => '2000-01-01', include_lower => 1, ); my $author_query = Lucy::Search::TermQuery->new( field => 'author_last_name', text => 'Foo', ); my $and_query = Lucy::Search::ANDQuery->new( children => [ $range_query, $author_query ], ); my $hits = $searcher->hits( query => $and_query ); ...
RangeQuery matches documents where the value for a particular field falls within a given range.
my $range_query = Lucy::Search::RangeQuery->new( field => 'product_number', # required lower_term => '003', # see below upper_term => '060', # see below include_lower => 0, # default true include_upper => 0, # default true );
Create a new RangeQuery.
Takes 5 parameters; field
is required,
as is at least one of either lower_term
or upper_term
.
sortable
field.upper_term
will pass.lower_term
will pass.lower_term
should be included in the results.upper_term
should be included in the results.my $compiler = $range_query->make_compiler( searcher => $searcher # required boost => $boost # required subordinate => $subordinate # default: false );
Abstract factory method returning a Compiler derived from this Query.
Lucy::Search::RangeQuery isa Lucy::Search::Query isa Clownfish::Obj.
Copyright © 2010-2015 The Apache Software Foundation, Licensed under the
Apache License, Version 2.0.
Apache Lucy, Lucy, Apache, the Apache feather logo, and the Apache Lucy project logo are trademarks of The
Apache Software Foundation. All other marks mentioned may be trademarks or registered trademarks of their
respective owners.