where标签 set标签

纯属笔记

如果遇到多条件查询还用if的话就会是这样:

看起来好像可以,但是如果模糊查询的时候name没给值,只给了price,那sql语句就变成了select * from product_ and price > #{price}

where标签 set标签

肯定会报错:

where标签 set标签

所以这个时候就需要where标签登场啦

<where>标签会进行自动判断
如果任何条件都不成立,那么就在sql语句里就不会出现where关键字
如果有任何条件成立,会自动去掉多出来的 and 或者 or。

where标签 set标签

set标签

 

对于更与where标签类似的,在update语句里也会碰到多个字段相关的问题。

  不过对于mybatis来说底层只有update和select两种操作

where标签 set标签

 这里有个问题没弄懂,以后了解了再来补坑

where标签 set标签

结果:修改成功

where标签 set标签