如何使用Lucene Query一起检查null值而不是null值?

时间:2017-04-19 05:15:14

标签: hibernate lucene hibernate-search

如何使用TermQuery一起检查null值而不是null?

1. TermQuery termQuery = new TermQuery(new Term("referencekuki.unit.name","Kuki"));
2. query.add(termQuery, BooleanClause.Occur.SHOULD);
3. BooleanQuery q = new BooleanQuery();        
4. q.add(new TermQuery(new Term("reference", "null")),BooleanClause.Occur.SHOULD);
5. q.add(new TermQuery(new Term("reference", "null")),BooleanClause.Occur.MUST_NOT);
6. query.add(q, BooleanClause.Occur.MUST);

在表中我们有引用列,它是null而不是null,我们也有referencekuki列,它总是有数据,即Kuki。

如果我只写第1行和第1行2然后它不返回任何结果;但在DB中我们有160条记录。我认为应该获得所有行。

如果我写1,2和& 4行返回结果,所有引用都为Null

但我需要所有数据,无论引用是否为null而不是null。所以我尝试了上面的代码,但它没有给出理想的结果。

有人可以帮忙解决问题吗?

0 个答案:

没有答案