java - 如何在 MyBatis 中进行复杂的 If 条件判断

标签 java sql mybatis ibatis

我想在 if 中测试以下条件MyBatis 的子句:

(x = null or x = '') and y != null and y != ''

但是,当我将其放入<if test=...时,if的内容即使 x 也不会添加到动态生成的 SQL 中确实为空并且 y有一个值(value)。 MyBatis 中应该如何处理这样的情况?

最佳答案

您正在分配 x 变量,而不是进行比较。改变

(x = null or x = '') and y != null and y != ''

(x == null or x == '') and y != null and y != ''

关于java - 如何在 MyBatis 中进行复杂的 If 条件判断,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45664990/

相关文章:

java - 为 Ibatis 加密一个属性文件

java - Autowired 为空且不适用于 Jersey + Spring

java - 编译器何时不隐式使用 StringBuffer/StringBuilder?

java - 使用 map.get() 时使用 java Map.containsKey() 是多余的

java - 在 Eclipse 中,定义嵌套类

sql - 更新涉及 groupby 子句的表,同时避免使用临时表

java - 无法在 Grails 应用程序中加载 OracleDriver

MySQL如何优化一个NOT IN查询?

python - 在python中从sql中提取数据(每秒一次)

java - 使用列表参数调用存储过程