gpt4 book ai didi

hibernate - 如果引用对象为 NULL,如何使用 HQL 获取空值来引用对象 ID

转载 作者:行者123 更新时间:2023-12-02 22:28:38 24 4
gpt4 key购买 nike

我的 HQL 选择查询如下所示

     select user.id, user.address.id from User user

在此查询中,如果 user.addressNULL,则查询不会返回该用户记录。

我的要求是,如果 user.address 为 NULL,则 user.address.id 应该为 user.address.id 返回所有带有 ''(空值)的用户记录。 记录应该如下所示

[1,''], [2,1], [3,'']...

最佳答案

今天遇到了类似的问题。这里的问题是hibernate会产生inner join address SQL。

select user0_.id as col_0_0_, address1_.id as col_1_0_ from user user0_
inner join address address1_ on user0_.address_id=address1_.id

作为内部联接的结果,您将丢失地址为空的所有记录。使用显式左连接来实现你所需要的。总部:

select user.id, addr.id from User user left join user.address addr

关于hibernate - 如果引用对象为 NULL,如何使用 HQL 获取空值来引用对象 ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12615002/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com