lucene--一个field多个条件查询

来源:互联网 发布:vb中怎么加密输入 编辑:程序博客网 时间:2024/05/22 08:01


在搜索的时候经常会遇到,要查询一个field里面的多个值,类似sql语句的 select * from table where aa in ('a','b','c')。


在lucene里面用MultiPhraseQuery,案例如下:


                MultiPhraseQuery query = new MultiPhraseQuery();        Term []terms = null;        if(!StringUtils.isBlank(src))        {        String []citys = StringUtils.split(src, ",");         terms = new Term[citys.length];        for (int i = 0; i < citys.length; i++)         {    String city = citys[i];    terms[i] = new Term("srcCity",city);                }        query.add(terms);        rootQuery.add(query,BooleanClause.Occur.MUST);                    }






原创粉丝点击