查询学生信息动态sql

<!--    where当查询的条件全部为null 则自动去除where 关键字如果有查询条件,但是第一个查询条件前有 and or 关键词,则可以自动去除关键词-->
<!--        查询 方法一:--><select id="search" resultType="student">select * from student<where><if test="stuNo!=null">stu_no=#{stuNo}</if><if test="stuName!=null">and stu_name=#{stuName}</if><if test="stuSex!=null">and stu_sex=#{stuSex}</if></where></select><!--    方法二:--><select id="search" resultType="student">select * from student
--         prefix 添加where前缀
--            prefixOverrides 去除and 前缀<trim prefix="where" prefixOverrides="and"><if test="stuNo!=null">stu_no=#{stuNo}</if><if test="stuName!=null">and stu_name=#{stuName}</if><if test="stuSex!=null">and stu_sex=#{stuSex}</if></trim></select>

根据学号修改学生信息动态sql

<!--    修改 方法一:--><update id="updateByStuNo" parameterType="student">update student<set><if test="stuName!=null">stu_name=#{stuName},</if><if test="stuSex!=null">stu_sex=#{stuSex},</if><if test="stuAge!=null">stu_age=#{stuAge}</if></set>wherestu_no=#{stuNo}</update><!--    方法二:--><update id="updateByStuNo" parameterType="student">update student
--         suffixOverrides  去除后缀 ,<trim prefix="set" suffixOverrides=","><if test="stuName!=null">stu_name=#{stuName},</if><if test="stuSex!=null">stu_sex=#{stuSex},</if><if test="stuAge!=null">stu_age=#{stuAge}</if></trim>wherestu_no=#{stuNo}</update>

根据学号批量删除学生信息

<!--    parameterType 参数类型-->
<!--    批量删除  方法一:-->
<!--             collection  传递的参数取的别名-->
<!--             item 代表从集合里取出的元素-->
<!--             separator 分隔符--><delete id="deleteMore" parameterType="list">delete from student where stu_no in(<foreach collection="ids" item="id" separator=",">#{id}</foreach>)</delete><!--    方法二:--><delete id="deleteMore" parameterType="list">delete from student where stu_no in<foreach collection="ids" open="(" item="id" separator="," close=")">#{id}</foreach></delete><!--    方法三:--><delete id="deleteMore" parameterType="list">delete from student where<foreach collection="ids" item="id" separator="or">stu_no=#{id}</foreach></delete>

查询条件有优先级别,只会使用一个条件进行查询操作

<select id="search" resultType="student">select * from student<where><choose><when test="stuNo!=null">stu_no=#{stuNo}</when><when test="stuName!=null">and stu_name=#{stuName}</when><otherwise>and stu_sex=#{stuSex}</otherwise></choose></where></select>

Mysql动态sql相关推荐

  1. Mysql动态sql之mybatis动态sql

    mysql动态sql想必大家都了解了 举个列子:现在有如下sql语句 select id,name from animals where id = 1 and name ="老虎" ...

  2. mysql动态sql是什么,mysql中动态sql的一次实际应用

    一.前言 本次实际应用中,使用到了如下几个要点: mysql的动态建表; mysql的多表插入; mysql的多表更新; mysql的多表删除; 二.使用场景 2.1 动态建表 要求建立多个表,例如电 ...

  3. mysql 动态sql 解析_MyBatis详解5.动态SQL

    字节跳动飞书内推! 北京.杭州.武汉.广州.深圳.上海,六大城市等你来投. 感兴趣的朋友可以私我咨询&内推,也可以通过链接直接投递! 海量HC,极速响应,快来和我成为同事吧. 今日头条.抖音. ...

  4. mysql动态sql循环语句_mysql存储过程循环遍历sql结果集,并执行动态sql

    /* 将其他几张表数据复制到一张总表中 */ DROP PROCEDURE IF EXISTS sp_customer; CREATE PROCEDURE sp_customer() BEGIN -- ...

  5. mysql动态SQL用法

    顾名思义"动态"SQL就是不固定的SQL,根据不同的条件把SQL语句进行拼接,来实现对数据库更加精准的操作.可以通过配置文件或者注解的形式实现,多用于多条件联查. xml版(配置文 ...

  6. MySQL——动态SQL拼接

    一.动态sql拼接 目标 能够使用mybatis的标签实现动态SQL拼接 分析 ​ 我们在前边的学习过程中,使用的SQL语句都非常简单.而在实际业务开发中,我们的SQL语句通常是动态拼接而成的,比如: ...

  7. mysql动态sql拼接_动态SQL(拼接)

    Q1:什么是动态SQL呢? A1:首先是SQL语句,是根据条件来拼接SQL Q2:为什么要用动态SQL? A2:因为在条件WHERE中出现OR会导致不能使用索引,从而使效率差别巨大. 例如:如图1.2 ...

  8. mysql动态sql无效_MySql动态SQL

    13.7. 用于预处理语句的SQL语法 MySQL 5.1对服务器一方的预制语句提供支持.如果您使用合适的客户端编程界面,则这种支持可以发挥在MySQL 4.1中实施的高效客户端/服务器二进制协议的优 ...

  9. mysql 动态sql 解析json数据_在SQL 中生成JSON数据

    这段时间接手一个数据操作记录的功能,刚拿到手上的时候打算用EF做,后来经过仔细考虑最后还是觉定放弃,最后思考再三决定: 1.以模块为单位分表.列固定(其实可以所有的操作记录都放到同一个表,但是考虑到数 ...

最新文章

  1. Python使用matplotlib可视化Treemap图、treemap将分层数据显示为一组嵌套矩形,每一组都用一个矩形表示,该矩形的面积与其值成正比(Treemap)
  2. 009_Gson版本支持
  3. 注释嵌套注释_注释梦Night
  4. JAVA 内存模型 (Java Memory Model,JMM)
  5. Yaml锚点和别名*
  6. async与await详解
  7. mask rcnn算法分析_注意力模型RPN(faster-rcnn)与APN(RA-CNN)对比精析
  8. 浅谈商品推荐:如何猜中用户的心思?
  9. 记一个函数定义中,形参是空列表时要注意的问题
  10. 8uftp目标计算机拒接,8UFTP连接FTP时空白的解决办法
  11. 发送网页内容到onenote_将网页中的信息快速添加到OneNote笔记本的方法
  12. 计算机教案在幻灯片中插入影片,2019小学信息技术教师资格证面试:试讲及答辩真题《在幻灯片中插入音频文件》...
  13. 星期五五–大数据,Doppio和假Linus Torvalds
  14. MuMu模拟器进行adb操作
  15. 将优盘的FAT32格式改为NTFS
  16. Alist+KODI打造免费家庭影院
  17. 据说是原CSDN排名第一的博客,我看到内容,确实被震憾了
  18. [已解决]mysql查询一周内的数据,解决一周的起始日期是从星期日(星期天|周日|周天)开始的问题
  19. 成功在于实践作文_成功源于行动作文800字
  20. 网络视频直播系统开发需要用到哪方面的知识?

热门文章

  1. Macro_Pack中的宏代码混淆方法分析
  2. Java 高内聚,低耦合
  3. 【设计模式自习室】原型模式
  4. FFmpeg 代码实现流媒体推流(RTSP)
  5. 【软件工程】内聚和耦合
  6. 华为鸿蒙官网旗舰店,华为发布鸿蒙系统HarmonyOS Connect品牌升级计划
  7. Fugitive.vim 使用教程二
  8. 智慧数据驱动:基于smardaten构建多维数据可视化大屏
  9. 宜昌一中2021高考成绩查询,宜昌一中2020年高考再创佳绩!这个成绩令人赞叹
  10. react native新建项目运行在安卓设备上