Mybatis的set标签,动态SQL

set标签常用于update语句中,搭配if标签使用

set标签的作用

1、会动态加上前置set关键字

2、可以删除无关的逗号

示例代码:

sql 复制代码
    <update id="update">
        update employee
        <set>
            <if test="name != null">name = #{name},</if>
            <if test="username != null">username = #{username},</if>
            <if test="password != null">password = #{password},</if>
            <if test="phone != null">phone = #{phone},</if>
            <if test="sex != null">sex = #{sex},</if>
            <if test="idNumber != null">id_number = #{idNumber},</if>
            <if test="updateTime != null">update_time = #{updateTime},</if>
            <if test="updateUser != null">update_User = #{updateUser},</if>
            <if test="status != null">status = #{status},</if>
        </set>
        where id = #{id}
    </update>

set标签和if标签的搭配就可以做到有效适应不同的SQL语句

相关推荐
有一个好名字24 分钟前
MyBatis-Plus 三种数据库操作方式详解 + 常用方法大全
数据库·mybatis
-Xie-32 分钟前
Redis(八)——多线程与单线程
java·数据库·redis
Kuo-Teng36 分钟前
LeetCode 279: Perfect Squares
java·数据结构·算法·leetcode·职场和发展
Filotimo_1 小时前
SpringBoot3整合Druid数据源
java·spring boot
百锦再1 小时前
第18章 高级特征
android·java·开发语言·后端·python·rust·django
乄bluefox1 小时前
Reactor 中的 doOnError 与 doOnCancel
java·reactor·rea
CoderYanger1 小时前
B.双指针——3194. 最小元素和最大元素的最小平均值
java·开发语言·数据结构·算法·leetcode·职场和发展·1024程序员节
程序猿20231 小时前
项目结构深度解析:理解Spring Boot项目的标准布局和约定
java·spring boot·后端
RainbowSea2 小时前
内网穿透配置和使用
java·后端
RainbowSea2 小时前
13. Spring AI 的观测性
java·spring·ai编程