如何查询具有特定类型订单或根本没有订单的客户?

时间:2016-03-10 16:02:52

标签: java jpa select left-join jpql

我知道如何查询具有特定类型订单的客户(在使用leftjoinfetch加入订单后):

select c from Customer c where c.orders.type = 'CANCELLED' 

我也知道如何查询没有订单的客户:

select c from Customer c where c.orders is empty 

如何在一个查询中选择具有特定订单类型或根本没有订单的所有客户?

谢谢。

1 个答案:

答案 0 :(得分:2)

像(在没有实际实体的情况下)。

SELECT c FROM Customer c LEFT JOIN c.orders o WHERE c.orders IS EMPTY OR o.type = 'CANCELLED'