set标记是mybatis提供的一个智能标记,我一般将其用在修改的sql中,例如以下情况:

  <update>

    update user

    <set>

      <if test="name != null and name.length()>0">name = #{name},</if>

      <if test="gender != null and gender.length()>0">gender = #{gender},</if>

    </set>

    where id = #{id}

  </update>

 在上述的代码片段当中,假如说现在三个字段都有值得话,那么上面打印的SQL语句如下:

 update user set name='xxx' ,  gender='xx'    where  id='x'

 在上面标红的地方是没有逗号的,也就是说set标记已经自动帮助我们把最后一个逗号给去掉了

mybatis动态SQL中的set标签的使用的更多相关文章

  1. mybatis动态sql中的trim标签的使用

    trim标记是一个格式化的标记,可以完成set或者是where标记的功能,如下代码: 1. select * from user <trim prefix="WHERE" p ...

  2. mybatis动态sql中的trim标签的使用(转)

    trim标记是一个格式化的标记,可以完成set或者是where标记的功能,如下代码: 1. select * from user <trim prefix="WHERE" p ...

  3. MyBatis动态SQL中trim标签的使用

    My Batis 官方文档 对 动态SQL中使用trim标签的场景及效果介绍比较少. 事实上trim标签有点类似于replace效果. trim 属性 prefix:前缀覆盖并增加其内容 suffix ...

  4. MyBatis动态SQL之一使用 if 标签和 choose标签

    bootstrap react https://segmentfault.com/a/1190000010383464 xml 中 < 转义 to thi tha <if test=&qu ...

  5. mybatis动态sql中的两个内置参数(_parameter和_databaseId)

    mybatis动态sql中的两个内置参数(_parameter和_databaseId)   <!-- mybatis动态sql的两个内置参数           不只是方法传递过来的参数可以被 ...

  6. mybatis动态sql中where标签的使用

    where标记的作用类似于动态sql中的set标记,他的作用主要是用来简化sql语句中where条件判断的书写的,如下所示: <select id="selectByParams&qu ...

  7. mybatis动态sql中foreach标签的使用

    foreach标签主要用于构建in条件,他可以在sql中对集合进行迭代.如下: <delete id="deleteBatch"> delete from user w ...

  8. mybatis动态sql中的sql标签——抽取可重用的sql片段

    1.用<sql>标签抽取可重用的sql片段 <!-- 抽取可重用的SQL片段,方便后面引用           1.sql抽取,经常将要查询的列名,或者插入用的列名,之后方便引用   ...

  9. mybatis动态SQL中的sql片段

    在mybatis中通过使用SQL片段可以提高代码的重用性,如下情景: 1.创建动态SQL <sql id="sql_count">select count(*)< ...

随机推荐

  1. c# UDP通信

    using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; usin ...

  2. 如何将vs2012项目的网站布置到iis上,实现内网访问

    1首先获得你本机的ip地址 可以通过命令行输入 ipconfig/all 2配置电脑的iis(前提是你已经安装了) 右击我的电脑选择管理 右键网站添加网页 会出来上面的对话框 选择直接的项目web路径 ...

  3. 谷歌Chrome浏览器如何设置网页的默认编码方法

    设置->高级->自定义字体->编码->utf-8

  4. 批发网加盟页面轮播Jquery jcarousellite插件效果

    Jquery jcarousellite 插件的好处 其中: 参数说明: btnPrev     string 上一个按钮的class名, 比如  btnPrev: ".prev" ...

  5. range函数

    th> a=torch.range(,) [.0001s] th> a [torch.DoubleTensor of size ] [.0002s] th> a=torch.rang ...

  6. DLL学习笔记一(DLL导入导出)

    创建DLL: 先声明导出函数:使用__declspec(dllexport) #include"DLLSample.h" #ifndef _DLL_SAMPLE_H #define ...

  7. IOSanimationDidStop

    -animationDidStop:finished: 方法中的flag参数表明了动画是自然结束还是被打断,我们可以在控制台打印出来.如果你用停止按钮来终止动画,它会打印NO,如果允许它完成,它会打印 ...

  8. iOS静态库和动态库的区别

    一.什么是库? 库是共享程序代码的方式,一般分为静态库和动态库. 静态库:链接时完整地拷贝至可执行文件中,被多次使用就有多份冗余拷贝. 动态库:链接时不复制,程序运行时由系统动态加载到内存,供程序调用 ...

  9. 增长xx%带来什么信息?

    增长xx%带来什么信息? 标签(空格分隔): 概率论 在与概率论有关的题目中,我们经常会遇到:某公司增长xx%,带来哪些信息? 看下面这道题目: 某公司在华东和华南两大区域开展业务,年底汇总业绩的时候 ...

  10. [HDOJ5787]K-wolf Number(数位DP)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5787 题意:求[L,R]区间内的数字,使得所有长度为k的子数列内所有数位都不同. K<=5的所以 ...