Mybatis中为什么要有<where> 标签,直接使用where的不好的地方

2021-05-10 15:57:36 浏览数 (1)

Mybatis 中为什么要使用标签,为什么不直接使用 where?

原因

如果不使用,而是直接在 where 后边使用标签,但是如果所有的都是 false,就代表了都是空,sql 语句中 where 后边如果不跟相关的条件,是会报错的。

解决办法

2.1

不使用标签的情况,无论的结果是什么,都在 where 后边加上一个 1==1 来防止都为空的情况

2.2

使用标签,这种是推荐的,因为当标签中都是空的时候,where 也就直接没有了

总结

针对上边的原因和两种解决方案,推荐直接使用标签,不用每次都写 1==1

0 人点赞