Mybatis的Mapper里动态sql个人常用批量增删改

Mybatis动态sql批量增删改

个人常用的一些批量增删改查的动态sql
表名为user 单表的,能想到的可能都加上了.希望对大家有所帮助
id,自增 integer
name varchar
age integer
sex integer
update_user_id integer
update_time datetime
create_user_id,integer
create_time datetime
del integer

id为自增

  <insert id="saveUsers" parameterType="list" useGeneratedKeys="true" keyProperty="id">
        insert into user
        (name,age,sex,create_user_id,create_time,del)
        VALUE
        <foreach collection="list" item="item" index="index" separator=",">
            (#{item.name},#{item.age},#{item.sex},#{item.userId},now(),0)
        </foreach>
    </insert>
 <update id="updateUsers" parameterType="list">
        update user
        <trim prefix="set" suffixOverrides=",">
            <trim prefix="name = case" suffix="end,">
                <foreach collection="list" index="index" item="item">
                    when id = #{item.id} then #{item.name}
                </foreach>
            </trim>
            <trim prefix="age = case" suffix="end,">
                <foreach collection="list" index="index" item="item">
                    when id = #{item.id} then #{item.age}
                </foreach>
            </trim>
            <trim prefix="sex = case" suffix="end,">
                <foreach collection="list" index="index" item="item">
                    when id = #{item.id} then #{item.sex}
                </foreach>
            </trim>
            <trim prefix="update_user_id = case" suffix="end,">
                <foreach collection="list" index="index" item="item">
                    when id = #{item.id} then #{item.updateUserId}
                </foreach>
            </trim>
            update_time=NOW()
        </trim>
        where
        <foreach collection="list" separator="or" item="item" index="index">
            id=#{item.id}
        </foreach>
    </update>
 <delete id="deleteUsers" parameterType="list">
        delete from user where 
        <foreach collection="list" separator="or" index="index" item="item">
            id=#{item.id}
        </foreach>
    </delete>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值