It should all be pretty clear from the API javadocs.  Take a look at
BooleanQuery, which is that single query that you can add other
queries.
Good luck.

Otis



--- Charles <[EMAIL PROTECTED]> wrote:
> Hi everyone,
> 
> First of all I'd like to thank you guys for developing a great search
> engine
> framework. I've tested it out and it works flawlessly (and really
> fast too).
> 
> Right now I plan to create a more advance search capability. I
> understand
> how to construct the Query object using the QueryParser, but I would
> like to
> know how I can add in different types of queries (like range, terms,
> boolean) all into one. I'm not sure if I can do this with the
> QueryParser
> and am looking for information on how to manually construct a Query
> object
> so i can combine all these requirements.
> 
> Here's what I want to do: I would like to have the user select values
> from a
> combo box (e.g. Price range, Area, Country, Number of rooms, land
> area, is
> Freehold or Leasehold etc). From what I gather this involves several
> type of
> queries including RangeQuery (for the price range), a TermQuery,
> BooleanQuery etc. So the question is how do i combine all these types
> of
> queries into one so I can obtain a single Hits result that matches
> all these
> requirements?
> 
> Any advice or urls is very much appreciated.
> Charles
> 
> 
> ----- Original Message -----
> From: "alex" <[EMAIL PROTECTED]>
> To: "Lucene Users List" <[EMAIL PROTECTED]>
> Sent: Tuesday, January 21, 2003 3:23 PM
> Subject: Re: how to join 2 queries togther
> 
> 
> > Thank you everyone for your help
> >
> >
> > ----- Original Message -----
> > From: "Lichtner, Guglielmo" <[EMAIL PROTECTED]>
> > To: "'Lucene Users List'" <[EMAIL PROTECTED]>
> > Sent: Monday, January 20, 2003 9:52 PM
> > Subject: RE: how to join 2 queries togther
> >
> >
> > >
> > > From this code I think I see a possible problem.
> > >
> > > I think one way to fix it is to parse the word in readLine() and
> add a
> > term
> > > query for each:
> > >
> > > BooleanQuery query = new BooleanQuery();
> > > System.out.print("will all of the words ");
> > > StringTokenizer tok1 = new StringTokenizer(in.readLine());
> > > while (tok.hasMoreTokens()) {
> > >     query.add(new TermQuery(new Term("content",
> tok1.nextToken()), true,
> > > false);
> > > }
> > > System.out.print("without the words");
> > > StringTokenizer tok2 = new StringTokenizer(in.readLine());
> > > while (tok.hasMoreTokens()) {
> > >     query.add(new TermQuery(new Term("content",
> tok2.nextToken()),
> false,
> > > true);
> > > }
> > > System.out.println("Searching for: " + query);
> > > Hits hits = searcher.search(query);
> > > System.out.println(hits.length() + " total matching documents 
> ");
> > >
> > >
> > > -----Original Message-----
> > > From: alex [mailto:[EMAIL PROTECTED]]
> > > Sent: Monday, January 20, 2003 2:57 PM
> > > To: Lucene Users List
> > > Subject: Re: how to join 2 queries togther
> > >
> > >
> > > thxs for your suggestion this is what i have written but it does
> not
> work
> > > any suggestion on how to get it to work ?
> > >
> > >  System.out.print("will all of the words ");
> > >         String q1 = in.readLine();
> > >  System.out.print("without the words");
> > >         String q2 = in.readLine();
> > >
> > >         BooleanQuery query = new BooleanQuery();
> > >               Query matchall = QueryParser.parse(q1, "content",
> analyzer);
> > >         query.add(matchall, true, false);
> > >               Query exclude = QueryParser.parse( q2, "content" ,
> > analyzer);
> > >         query.add(exclude, false, true);
> > >
> > >         System.out.println("Searching for: " +
> query.toString("content"));
> > >         Hits hits = searcher.search(query);
> > >         System.out.println(hits.length() + " total matching
> documents
> ");
> > >
> > >
> > > ----- Original Message -----
> > > From: "Lichtner, Guglielmo" <[EMAIL PROTECTED]>
> > > To: "'Lucene Users List'" <[EMAIL PROTECTED]>
> > > Sent: Monday, January 20, 2003 4:04 PM
> > > Subject: RE: how to join 2 queries togther
> > >
> > >
> > > >
> > > > I'm a newbie, but I could suggest this:
> > > >
> > > > BooleanQuery bq = new BooleanQuery();
> > > > bq.add(firstQuery, true, false);
> > > > bq.add(secondQuery, false, true);
> > > >
> > > > That should make the first query required, and the second
> > > > one prohibited, which is like saying "+firstQuery -secondQuery"
> > > >
> > > > I haven't tried this myself but I did try this for an either/or
> > > combination,
> > > > and it does work for me.
> > > >
> > > > -----Original Message-----
> > > > From: alex [mailto:[EMAIL PROTECTED]]
> > > > Sent: Monday, January 20, 2003 10:54 AM
> > > > To: Lucene User
> > > > Subject: how to join 2 queries togther
> > > >
> > > >
> > > > hi all
> > > >
> > > > I have a method which takes in a normal query breaks into token
> and
> > places
> > > +
> > > > in front it
> > > > I have a second method which does the same instead puts a -
> sign front
> > the
> > > > token
> > > >
> > > > the reason i have done this is so that the user do not need to
> add +
> > and -
> > > > signs by themselfs and also I cound
> > > >  not get the booleanQuery to work
> > > >
> > > > this makes it so that i have 2 queries
> > > >
> > > > 1) a file must contain all these words
> > > > 2) a file must exclude this words
> > > >
> > > > my question is how do join these 2 queries togther so it
> filters out
> > words
> > > > that i want and do not want ?
> > > >
> > > > Alex
> > > >
> > > > --
> > > > To unsubscribe, e-mail:
> > > <mailto:[EMAIL PROTECTED]>
> > > > For additional commands, e-mail:
> > > <mailto:[EMAIL PROTECTED]>
> > > >
> > > >
> > >
> > >
> > > --
> > > To unsubscribe, e-mail:
> > > <mailto:[EMAIL PROTECTED]>
> > > For additional commands, e-mail:
> > > <mailto:[EMAIL PROTECTED]>
> > >
> > > --
> > > To unsubscribe, e-mail:
> > <mailto:[EMAIL PROTECTED]>
> > > For additional commands, e-mail:
> > <mailto:[EMAIL PROTECTED]>
> > >
> > >
> >
> >
> > --
> > To unsubscribe, e-mail:
> <mailto:[EMAIL PROTECTED]>
> > For additional commands, e-mail:
> <mailto:[EMAIL PROTECTED]>
> >
> >
> >
> 
> 
> 
> --
> To unsubscribe, e-mail:  
> <mailto:[EMAIL PROTECTED]>
> For additional commands, e-mail:
> <mailto:[EMAIL PROTECTED]>
> 


__________________________________________________
Do you Yahoo!?
Yahoo! Mail Plus - Powerful. Affordable. Sign up now.
http://mailplus.yahoo.com

--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

Reply via email to