如何在LUCENE.NET中获得“IN”(SQL Server)功能?
假设某些记录存在ID:a,b,c,d,e,f,..
所以我想通过Lucene.net获取('a','b','c')中的记录。
请告诉我如何在Lucene.net上撰写此查询。
先谢谢。
答案 0 :(得分:2)
您需要使用带有SHOULD子句的BooleanQuery。
BooleanQuery query = new BooleanQuery();
query.Add(new TermQuery(new Term("ID", "a"), Occur.SHOULD));
query.Add(new TermQuery(new Term("ID", "b"), Occur.SHOULD));
query.Add(new TermQuery(new Term("ID", "c"), Occur.SHOULD));
这意味着任何结果必须具有ID = a,b或c。
答案 1 :(得分:0)
查询q =新的QueryParser(“ID”,新的YourAnalyzer())。Parse(“a b c d”):)