前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >mybatis 中 foreach collection的常用用法

mybatis 中 foreach collection的常用用法

作者头像
人不走空
发布2024-02-20 19:11:10
2660
发布2024-02-20 19:11:10
举报
文章被收录于专栏:学习与分享学习与分享

MyBatis中的foreach标签用于在SQL语句中遍历集合,并将集合中的元素逐个应用到SQL语句中。以下是foreach标签的常见用法示例:

1.遍历List或数组:

代码语言:javascript
复制
<select id="findUsersByIds" resultType="User">
  SELECT * FROM users
  WHERE id IN
  <foreach item="id" collection="ids" open="(" separator="," close=")">
    #{id}
  </foreach>
</select>

上述示例中,ids为一个List或数组,通过foreach标签将其中的元素逐个应用到SQL语句中的IN子句中。

2.遍历Map:

代码语言:javascript
复制
<select id="findUsersByMap" resultType="User">
  SELECT * FROM users
  WHERE
  <foreach item="entry" collection="params" separator="AND">
    ${entry.key} = #{entry.value}
  </foreach>
</select>

上述示例中,params为一个Map,通过foreach标签将其中的键值对逐个应用到SQL语句中的WHERE条件中。

3.使用index属性:

代码语言:javascript
复制
<select id="batchUpdateUsers" parameterType="List">
  <foreach item="user" index="index" collection="users" open="begin;" separator=";" close="end;">
    UPDATE users SET name = #{user.name}, age = #{user.age} WHERE id = #{user.id};
  </foreach>
</select>
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2023-08-13,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档