我有一个Customer实体,其中包含@OneToMany的Account子元素。
我想要执行fetch join,以返回具有相应活动账户(account.isActive = true)的客户。如果客户没有任何帐户,则也需要返回它。
对于以下JPQL,对于具有非活动帐户的客户,它们确实被过滤掉了,但没有任何帐户的客户未被返回:
什么是编写查询的简洁方式,以便涵盖两种情况(没有账户的客户和有活动账户的客户)?
对于以下JPQL,对于具有非活动帐户的客户,它们确实被过滤掉了,但没有任何帐户的客户未被返回:
@NamedQuery(name = "Customer.findById", query = "SELECT c FROM Customer c LEFT JOIN FETCH c.accounts a WHERE c.id = :id AND a.isActive=true")
什么是编写查询的简洁方式,以便涵盖两种情况(没有账户的客户和有活动账户的客户)?