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语句

相关推荐
李少兄33 分钟前
领域驱动设计与 Clean Code 的实践
java·数据库·领域驱动
老马95271 小时前
opencode7-桌面应用实战2
java·人工智能·后端
李白的天不白1 小时前
大规模请求数据并发问题
java·前端·数据库
智慧物业老杨2 小时前
智慧物业数智化转型实战:从工单响应到业主满意度的闭环构建
java·开发语言
Kiling_07042 小时前
Java集合框架:List集合详解与应用
java·开发语言·windows
极客先躯2 小时前
高级java每日一道面试题-2025年12月08日-实战篇[Docker]-如何为 Docker 配置代理?如何为容器配置代理?
java·docker·代理配置的双层架构·docker 守护进程配置代理·为容器配置代理·构建时环境变量·运行时注入环境变量
csdn2015_2 小时前
java springboot 文件导入,判断第一列的值是否有重复
java·windows·spring boot
Navicat中国2 小时前
AI 代码补全如何改变 DBA 编写 SQL 的方式
数据库·人工智能·sql·dba·navicat
~|Bernard|2 小时前
四,go语言中GMP调度模型
java·前端·golang
Tisfy2 小时前
LeetCode 2553.分割数组中数字的数位:模拟(maybe+翻转)——java也O(1)
java·数学·算法·leetcode·题解·模拟·取模