JPQL查询---如何使用“is null”
我在 JPQL 中使用以下查询来查询地址列为空的人员。
列表 rl = em.createQuery("从 Person 中选择 o 作为 o 其中 o.address IS NULL" ).setFirstResult( 0).setMaxResults( 50).getResultList(); ...
这行代码总是返回一个空列表,显然该表确实有与条件匹配的条目。
类人{ 地址地址; 字符串名称; ... } 类地址{ 字符串名称; ... }
有人知道这个 jpql 语句有什么问题吗? 提前致谢。
i use the following query in JPQL to query the people whose address column is empty.
List rl =
em.createQuery( "select o from Person as o where
o.address IS NULL" ).setFirstResult(
0).setMaxResults( 50).getResultList();
...
this line of code always return an empty list, obviously the table does has entries that match the condition.
class Person {
Address address;
String name;
... }
class Address {
String name;
... }
anyone knows what's wrong with this jpql statement?
thanks in advance.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
如前所述,地址列为空,然后尝试使用 IS EMPTY 表达式而不是 IS NULL。
根据 id 的数据类型检查约束。
此外,无需提及 setFirstResult(0) 因为它不会跳过任何结果 &如果没有它,默认情况下将获取所有匹配结果。
As mentioned, address column is empty, then try using IS EMPTY expression instead of IS NULL.
Check constraint according to id's datatype.
Also there is no need to mention setFirstResult(0) as it is not going to skip any results & without it, by default all matching results will be fetched.