AND OR搜索lucene中的语法

时间:2012-06-07 18:50:50

标签: java netbeans lucene

我正在使用Lucene。我有三列是

DocId - TermID - TermFrequency
 1    -   004  -      667
 2    -   005  -      558

如果我使用mysql,那么查询AND操作是

SELECT * FROM table_name WHERE DocId='1' AND TermId='004'

如何使用JAVA在Lucene中编写上述查询。对于我正在使用的一列搜索代码是

Query query = new QueryParser(Version.LUCENE_35,"TermID", analyzer).parse("004");

如何在QueryParser中使用AND操作?

1 个答案:

答案 0 :(得分:0)

条款可以与AND关键字一起分组,如下所示:

Query query = new QueryParser(Version.LUCENE_35,"TermID", analyzer).parse("004 AND DocId:1");

请注意,您不需要为"004"字词限定字段,因为您已将"TermId"设置为默认字段。

您应该在查询语法上阅读the manual ...它非常富有表现力。