我可以使用该SelectQuery对象建立嵌套条件吗?
SelectQuery
我想得到:
select * from car where ((car.color = 'blue' or car.model = 'Genesis') or (car.manufactor = 'ford' and car.color = 'blue'))
…那么您可以像这样将它们提供给您的SelectQuery对象:
SelectQuery query = ... query.addConditions( ( CAR.COLOR.eq("blue") .or ( CAR.MODEL.eq("Genesis") ) ) .or ( CAR.MANUFACTOR.eq("ford") .and ( CAR.COLOR.eq("blue") ) ) )
我添加了一些空格以提高可读性
…然后,您可以按照以下步骤创建谓词:
Condition condition; condition = CAR.COLOR.eq("blue"); condition = condition.or(CAR.MODEL.eq("Genesis")); condition = condition.or(CAR.MANUFACTOR.eq("ford").and(CAR.COLOR.eq("blue")));
两种方法完全等效。