Ok thanks for the input. ----- Original Message ----- From: "Otis Gospodnetic" <[EMAIL PROTECTED]> To: "Lucene Users List" <[EMAIL PROTECTED]> Sent: Wednesday, January 22, 2003 7:06 AM Subject: Re: how to join 2 queries togther
> Mailing list archives would be the only place for now. > If you can figure out JavaCC you can also look at QueryParser.jj > itself. > > It would be nice to add RangeQuery syntax to that Query Parser Syntax > page, yes. > Peter, can you do this? > > Thanks, > Otis > > --- Charles <[EMAIL PROTECTED]> wrote: > > Thanks for the advice Otis. I used the BooleanQuery to nest all my > > sub > > queries and it works fine. > > > > However I still have one question, regarding the RangeQuery. Where > > can I > > find an updated list of the syntax for RangeQuery (or any other > > Queries if > > exists)? I was fortunate enough to stumble across a reply in the > > mailing > > list addressing the syntax query for version 1.3.1 (which is what I'm > > using). The "Query Syntax" of the Lucene page do not cover this area. > > > > > > > > ----- Original Message ----- > > From: "Otis Gospodnetic" <[EMAIL PROTECTED]> > > To: "Lucene Users List" <[EMAIL PROTECTED]> > > Sent: Tuesday, January 21, 2003 10:27 PM > > Subject: Re: how to join 2 queries togther > > > > > > > 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]> > > > > > > > > > > > > > > -- > > 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]> > > > -- To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>