我在JPQL中使用以下查询来查询其地址列为空的人.
列出rl = em.createQuery("从o中选择o为o,其中o.address为空").setFirstResult(0).setMaxResults(50).getResultList(); ...
这行代码总是返回一个空列表,显然该表确实具有与条件匹配的条目.
class Person {地址; 字符串名称; ...} class Address {String name; ...}
谁知道这个jpql语句有什么问题?提前致谢.
Nay*_*kar 20
如上所述,地址列为空,然后尝试使用IS EMPTY表达式而不是IS NULL.
em.createQuery( "SELECT o FROM Person o where (o.address.id IS NULL OR o.address.id = 0").setMaxResults(50).getResultList();
Run Code Online (Sandbox Code Playgroud)
根据id的数据类型检查约束.
此外,没有必要提及setFirstResult(0),因为它不会跳过任何结果,没有它,默认情况下将获取所有匹配的结果.
| 归档时间: |
|
| 查看次数: |
41816 次 |
| 最近记录: |