是否可以为Seam EntityQuery创建限制子句,这些子句是ORed而不是始终一起进行AND运算?
答案 0 :(得分:1)
看看setRestrictionLogicOperator(运算符)。操作员可以是“和”或“或”。这将是“和”或“或”所有限制性陈述。
答案 1 :(得分:0)
请注意,您也可以在private static final String EJBQL
中编写所有内容,EL也在这里解释,因此您可以将OR和AND组合在一起:
select c from Cat c where c.gender=#{cat.gender} and ( c.name=#{cat.name} or c.color=#{cat.color} )
您甚至可以避免像这样的空值问题:where c.name=#{empty cat.name ? "defaultName" : cat.name }