That worked... thanks! -----Original Message----- From: Michael D. Curtin [mailto:[EMAIL PROTECTED] Sent: Thursday, July 06, 2006 1:04 PM To: java-user@lucene.apache.org Subject: Re: BooleanQuery question
Van Nguyen wrote: > I just want results that have: > > ID: 1234 OR 2344 OR 2323 > > LOCATION: A1 > > LANGUAGE: ENU > > This query returns everything from my index. How would I create a query > that will only return results the must have LOCATION and LANGUAGE and > have only those three IDs. I think you'll need to put the three ID-based TermQuerys into a sub-BooleanQuery instead of the top-level query. Something like this: BooleanQuery subquery = new BooleanQuery(); subquery.add(term1, BooleanClause.Occur.Should); subquery.add(term2, BooleanClause.Occur.Should); subquery.add(term3, BooleanClause.Occur.Should); query.add(subquery, BooleanClause.Occur.MUST); Good luck! --MDC --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]