mybatis中使用in

使用格式

update test set test_data = 0 where test_id in
<foreach item="id" index="index" collection="list" open="(" separator="," close=")">
#{id}
</foreach>

foreach格式说明

  • collection属性的参数类型可以使:List、数组、map集合
    • 比如上面的例子中使用的是list,此时调用的方法形如 int updateTestData(List idList);
      • 上面的collection中直接写的是list,所以可以不用和形参一致
      • 如果在collection那里想写idList,那么方法就需要写成int updateTestData(@Param("idList")List idList);
  • item: 表示在迭代过程中每一个元素的别名,可以随便起名,但是必须跟元素中的#{}里面的名称一样。
  • index:表示在迭代过程中每次迭代到的位置(下标)
  • open:前缀, sql语句中集合都必须用小括号()括起来
  • close:后缀
  • separator:分隔符,表示迭代时每个元素之间以什么分隔

注意

在foreach标签中的#{id}前后的空格如果是中文的就有sql语法错误

转载于:https://my.oschina.net/guowei11/blog/3079665

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值