EntityWrapper如何在and条件中嵌套or语句

目录

  • 在and条件中嵌套or语句
  • EntityWrapper的一些接口说明

在and条件中嵌套or语句 想要写一个类似如下的语句:
select * from table_1 where (coulmn_1 like '%XX%' or coulmn_1 like '%XX%')and del_flag='0'

但是在实际执行过程中,mybatisplus将其解析成了:
select * from table_1 where coulmn_1 like '%XX%' or coulmn_1 like '%XX%'and del_flag='0'

显然,这里由于没有括号,条件是不一样的。使用andNew代替and:
wrapper.andNew("del_flag='0'");

最后在日志中打印出的语句为:
select * from table_1 where (coulmn_1 like '%XX%' or coulmn_1 like '%XX%')and (del_flag='0')

andNew的作用就是另起一个and()!

EntityWrapper的一些接口说明
查询方式 说明
setSqlSelect 设置SELECT查询字段
where WHERE语句,拼接 - WHERE条件
and AND语句,拼接 - AND 字段=值
andNew AND语句,拼接 - AND (字段=值)
or OR语句,拼接 - OR 字段=值
orNew OR语句,拼接 - OR(字段=值)
eq 等于=
allEq 基于map内容等于=
ne 不等于<>
gt 大于>
ge 大于等于>=
lt 小于<
le 小于等于<=
like 模糊查询LIKE
notLike 模糊查询NOT LIKE
in IN查询
notin NOT IN查询
isNull NULL值查询
isNotNull IS NOT NULL
groupBy 分组GROUP BY
having HAVING关键词
orderBy 排序ORDER BY
orderAsc ASC排序ORDER BY
orderDesc DESC排序ORDER BY
exists EXISTS条件语句
notExists NOT EXISTS条件语句
between BETWEEN条件语句
notBetween NOT BETWEEN条件语句
addFilter 自由拼接SQL
last 拼接在最后,例如last(“LIMIT 1”)
【EntityWrapper如何在and条件中嵌套or语句】以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

    推荐阅读