You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-user@lucene.apache.org by Eduardo Pierdant <ed...@occ.com.mx> on 2010/07/06 19:49:00 UTC
Question: searching on a NumericField, with sort and filter
Hi all.
I've been dealing with a small problem when searching and trying to sort
and filter on a NumericField using Lucene 2.9.2; the result never comes back
as expected. Here are some snippets of my code, so you might take a look and
reference me or help me out to solve this problem.
At document creation, I add the field like this:
doc.add(new NumericField("PuntosJobSense", Field.Store.YES,
false).setIntValue(Integer.parseInt(puntosJS)));
When searching, I use a sort field and a Filter:
SortField sf = new SortField("PuntosPatrocinadas", SortField.INT,
true);
Sort sortOrder = new Sort(sf);
Filter nf = NumericRangeFilter.newIntRange("PuntosPatrocinadas", 0,
Integer.MAX_VALUE, true, true);
hits = searcher.search(query, nf, MAX_DOC_SEARCH,
sortOrder).scoreDocs;
the only "query" parameter that I'm passing so far is "date modified" that
uses the date the document was added to the index. If I don't use this
search and simply search without filter nor sorting, everything is ok.
Hope someone can help me out.
Eduardo
---------------------------------------------------------------------
To unsubscribe, e-mail: java-user-unsubscribe@lucene.apache.org
For additional commands, e-mail: java-user-help@lucene.apache.org
RE: Question: searching on a NumericField, with sort and filter
Posted by Eduardo Pierdant <ed...@occ.com.mx>.
Works perfectly now, thx!
-----Original Message-----
From: Uwe Schindler [mailto:uwe@thetaphi.de]
Sent: martes, 06 de julio de 2010 01:31 p.m.
To: java-user@lucene.apache.org
Subject: RE: Question: searching on a NumericField, with sort and filter
Hi Eduardo,
For sorting or a NumericRangeQuery, the field must be *indexed*. Storing has
no effect at all, it's only needed, if you want to show the value in search
results. That is important for *any* type of field (not only NumericField).
Uwe
-----
Uwe Schindler
H.-H.-Meier-Allee 63, D-28213 Bremen
http://www.thetaphi.de
eMail: uwe@thetaphi.de
> -----Original Message-----
> From: Eduardo Pierdant [mailto:eduardop@occ.com.mx]
> Sent: Tuesday, July 06, 2010 7:49 PM
> To: java-user@lucene.apache.org
> Subject: Question: searching on a NumericField, with sort and filter
>
>
> Hi all.
>
>
> I've been dealing with a small problem when searching and trying to
> sort
and
> filter on a NumericField using Lucene 2.9.2; the result never comes
> back
as
> expected. Here are some snippets of my code, so you might take a look
> and reference me or help me out to solve this problem.
>
>
> At document creation, I add the field like this:
> doc.add(new NumericField("PuntosJobSense", Field.Store.YES,
> false).setIntValue(Integer.parseInt(puntosJS)));
>
> When searching, I use a sort field and a Filter:
>
> SortField sf = new SortField("PuntosPatrocinadas", SortField.INT,
> true);
> Sort sortOrder = new Sort(sf);
> Filter nf = NumericRangeFilter.newIntRange("PuntosPatrocinadas",
> 0, Integer.MAX_VALUE, true, true);
> hits = searcher.search(query, nf, MAX_DOC_SEARCH,
> sortOrder).scoreDocs;
>
> the only "query" parameter that I'm passing so far is "date modified"
> that uses the date the document was added to the index. If I don't use
> this
search
> and simply search without filter nor sorting, everything is ok.
>
> Hope someone can help me out.
> Eduardo
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: java-user-unsubscribe@lucene.apache.org
> For additional commands, e-mail: java-user-help@lucene.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: java-user-unsubscribe@lucene.apache.org
For additional commands, e-mail: java-user-help@lucene.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: java-user-unsubscribe@lucene.apache.org
For additional commands, e-mail: java-user-help@lucene.apache.org
RE: Question: searching on a NumericField, with sort and filter
Posted by Uwe Schindler <uw...@thetaphi.de>.
Hi Eduardo,
For sorting or a NumericRangeQuery, the field must be *indexed*. Storing has
no effect at all, it's only needed, if you want to show the value in search
results. That is important for *any* type of field (not only NumericField).
Uwe
-----
Uwe Schindler
H.-H.-Meier-Allee 63, D-28213 Bremen
http://www.thetaphi.de
eMail: uwe@thetaphi.de
> -----Original Message-----
> From: Eduardo Pierdant [mailto:eduardop@occ.com.mx]
> Sent: Tuesday, July 06, 2010 7:49 PM
> To: java-user@lucene.apache.org
> Subject: Question: searching on a NumericField, with sort and filter
>
>
> Hi all.
>
>
> I've been dealing with a small problem when searching and trying to sort
and
> filter on a NumericField using Lucene 2.9.2; the result never comes back
as
> expected. Here are some snippets of my code, so you might take a look and
> reference me or help me out to solve this problem.
>
>
> At document creation, I add the field like this:
> doc.add(new NumericField("PuntosJobSense", Field.Store.YES,
> false).setIntValue(Integer.parseInt(puntosJS)));
>
> When searching, I use a sort field and a Filter:
>
> SortField sf = new SortField("PuntosPatrocinadas", SortField.INT,
> true);
> Sort sortOrder = new Sort(sf);
> Filter nf = NumericRangeFilter.newIntRange("PuntosPatrocinadas",
> 0, Integer.MAX_VALUE, true, true);
> hits = searcher.search(query, nf, MAX_DOC_SEARCH,
> sortOrder).scoreDocs;
>
> the only "query" parameter that I'm passing so far is "date modified" that
> uses the date the document was added to the index. If I don't use this
search
> and simply search without filter nor sorting, everything is ok.
>
> Hope someone can help me out.
> Eduardo
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: java-user-unsubscribe@lucene.apache.org
> For additional commands, e-mail: java-user-help@lucene.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: java-user-unsubscribe@lucene.apache.org
For additional commands, e-mail: java-user-help@lucene.apache.org