Sql 如何使用MyBatis组合复杂的布尔表达式?

Sql 如何使用MyBatis组合复杂的布尔表达式?,sql,mybatis,Sql,Mybatis,我有以下MyBatis代码片段,但SQL代码不会在我的完整SQL语句中执行(布尔变量具有正确的值): 和(myTable.myColumn1不为NULL或myTable.myColumn2=1) 如果我不向您展示完整的SQL语句,我认为这更清楚。这是将两个以上的布尔变量组合为复杂布尔表达式的正确方法吗?使用括号也不起作用。答案非常简单: test="deletedParticipation and canceledParticipation and openedParticipation"

我有以下MyBatis代码片段,但SQL代码不会在我的完整SQL语句中执行(布尔变量具有正确的值):


和(myTable.myColumn1不为NULL或myTable.myColumn2=1)

如果我不向您展示完整的SQL语句,我认为这更清楚。这是将两个以上的布尔变量组合为复杂布尔表达式的正确方法吗?使用括号也不起作用。

答案非常简单:

test="deletedParticipation and canceledParticipation and openedParticipation"

…工作正常,无需将它们与true进行比较,因为它们已经是布尔表达式。。。如果三个参数中的一个为false或null,则测试将为false,因此无需检查null。

您可以使用以下选项:


请注意,您始终可以在对象上使用java方法(即
public
)。所以你也可以这样做



问题可能重复;)。此问题不是重复问题
openedParticipation
要检查
false
test=“deletedParticipation and canceledParticipation and!openedParticipation”
不起作用。这里有什么提示吗?
test="deletedParticipation and canceledParticipation and openedParticipation"