Jpql LEFT JOIN FETCH,其中null条件

时间:2017-10-19 17:35:03

标签: java hibernate jpa left-join jpql

用户可以拥有多部手机。我想用手机的所有用户返回所有用户的电话IS NULL;

我的JPQL查询:

SELECT u FROM User u LEFT JOIN FETCH u.phones p WHERE p.endContract IS NULL

此查询无法正常工作:

a)当用户没有任何电话查询时,只返回带有空电话的用户数据,这是正常的

b)当用户有多个带有endContract的手机为NULL时,我将获得所有正确的数据

c)问题是当我的用户有多部电话但没有电话的endContract是NULL。然后我没有得到查询结果, 但是我期望得到与a)场景相同的结果

0 个答案:

没有答案