lucene-java-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Ariel <isaacr...@gmail.com>
Subject Re: How to search documents taking in account the dates ???
Date Wed, 17 Dec 2008 20:15:30 GMT
Hi:
This solution have a problem.
the results are sorted bye the year criteria but I need that after sort by
year criteria it sort by the scoring criteria two.
How can I do this ???

I hope you can help me.
Greetings
Ariel

On Wed, Nov 19, 2008 at 5:28 PM, Erick Erickson <erickerickson@gmail.com>wrote:

> Well, MultiSearcher is just a Searcher, so you have available
> all of the search methods on Searcher. One of which is:
>
> search
>
> public TopFieldDocs
>
> <file:///C:/lucene-2.1.0/docs/api/org/apache/lucene/search/TopFieldDocs.html>
> *search*(Query
> <file:///C:/lucene-2.1.0/docs/api/org/apache/lucene/search/Query.html>
> query,
>                           Filter
> <file:///C:/lucene-2.1.0/docs/api/org/apache/lucene/search/Filter.html>
> filter,
>                           int n,
>                           Sort
> <file:///C:/lucene-2.1.0/docs/api/org/apache/lucene/search/Sort.html>
> sort)
>                    throws IOException
> <http://java.sun.com/j2se/1.4/docs/api/java/io/IOException.html>
>
> Expert: Low-level search implementation with arbitrary sorting. Finds the
> top n hits for query, applying filter if non-null, and sorting the hits by
> the criteria in sort.
>
>
> Best
> Erick
>
>
> On Wed, Nov 19, 2008 at 4:22 PM, Ariel <isaacrc82@gmail.com> wrote:
>
> > Well, this is what I am doing:
> >
> > queryString="year:[2003 TO 2005]"
> > [CODE]
> >    Query pquery = null;
> >    Hits hits = null;
> >    Analyzer analyzer = null;
> >    analyzer = new SnowballAnalyzer("English");
> >    try {
> >        pquery = MultiFieldQueryParser.parse(new String[] {queryString,
> > queryString}, new String[] {"title", "content"}, analyzer); //analyzer
> >    } catch (ParseException e1) {
> >        e1.printStackTrace();
> >    }
> >    MultiSearcher searcher = (MultiSearcher) searcherCache.get(name);
> >
> >    try {
> >        hits = searcher.search(pquery);
> >    } catch (IOException e1) {
> >        e1.printStackTrace();
> >    }
> > [/CODE]
> >
> > I don't know the methods that include sorting. I have made the sorting by
> > the score criteria so far, I don-t know how to change it to the year
> field
> > criteria.
> > As you can see, I am using a multisearcher because I have several
> indexes.
> >
> > I hope you can help me.
> > Regards
> > Thanks in advance
> > Ariel
> >
> >
> >
> > On Wed, Nov 19, 2008 at 3:58 PM, Ian Lea <ian.lea@gmail.com> wrote:
> >
> > > Are you using one of the search methods that includes sorting?  If
> > > not, then do.  If you are, then you need to tell us exactly what you
> > > are doing and exactly what you reckon is going wrong.
> > >
> > >
> > > --
> > > Ian.
> > >
> > >
> > > On Wed, Nov 19, 2008 at 6:23 PM, Ariel <isaacrc82@gmail.com> wrote:
> > > > it is supposed lucene make a lexicocraphic sorting but this is not
> > > hapening,
> > > > Could you tell me what I'm doing wrong ?
> > > > I hope you can help me.
> > > > Regards
> > > >
> > > > On Wed, Nov 19, 2008 at 11:56 AM, Ariel <isaacrc82@gmail.com> wrote:
> > > >
> > > >> Thanks, that was very helpful, but I have a question when I make the
> > > >> searches it does not sort the results according to the range, for
> > > example:
> > > >> year: [2003 TO 2008] in the first page 2003 documents are showed,
in
> > the
> > > >> second 2005 documents, in the third page 2004 documents, I don't see
> > any
> > > >> sort criteria.
> > > >> How could I fix that problem ???
> > > >> Greetings
> > > >> Ariel
> > > >>
> > > >>
> > > >> On Wed, Nov 19, 2008 at 11:09 AM, Ian Lea <ian.lea@gmail.com>
> wrote:
> > > >>
> > > >>> Hi - sounds like you need a range query.
> > > >>>
> > > >>>
> > > >>>
> > >
> >
> http://lucene.apache.org/java/2_3_2/queryparsersyntax.html#Range%20Searches
> > > >>>
> > > >>>
> > > >>> --
> > > >>> Ian.
> > > >>>
> > > >>>
> > > >>> On Wed, Nov 19, 2008 at 4:02 PM, Ariel <isaacrc82@gmail.com>
> wrote:
> > > >>> > Hi everybody:
> > > >>> >
> > > >>> > I need to make search with lucene 2.3.2, taking in account
the
> > dates,
> > > >>> > previously when I build the index I create a date field where
I
> > > stored
> > > >>> the
> > > >>> > year in which the document was created, at the search moment
I
> > would
> > > >>> like to
> > > >>> > retrieve documents that have been created before a Year or
after
> a
> > > Year,
> > > >>> for
> > > >>> > example documents before 2002 year o after 2003 year.
> > > >>> > It is possible to do that with lucene ???
> > > >>> > Regards
> > > >>> > Ariel
> > > >>> >
> > > >>>
> > > >>>
> ---------------------------------------------------------------------
> > > >>> 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
> > >
> > >
> >
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message