1.删除数据(假删除)并修改时间

<!--根据id删除学生信息(多条)-->
<update id="updateStuStatus" parameterType="map">
UPDATE student_t
SET status = 0, modifiy_time = #{modifiyTime,jdbcType=TIMESTAMP}
WHERE _id in(
<foreach collection="list" item="id" separator=",">
#{id, jdbcType=INTEGER}
</foreach>
)
</update>

传入的数据:

//Service
Map<String,Object> map = new HashMap<String,Object>();
map.put("list",list);
map.put("modifiyTime",date);
int result = studentInfoEntityMapper.updateStuStatus(map);

2.根据学生id查找学生图片

<!--查询学生图片-->
<select id="selectByStuList" resultMap="BaseResultMap">
SELECT img_src
FROM img_t
WHERE
stu_id IN
<foreach collection="list" item="item" open="(" separator="," close=")">
#{item.id,jdbcType=INTEGER}
</foreach>
and status = 1
ORDER BY create_time DESC
</select> <!--传入的数据,dao层-->
List<ImgInfoEntity> selectByStuList(List<StudentInfoEntity> list);

3.根据教师id查找学生信息,或者根据学生名字查找学生信息

<!--根據教師id,查询學生信息。或者,根據學生姓名,查詢學生信息-->
<select id="selectStuAllByTeaId" parameterType="map" resultMap="BaseResultMap">
SELECT <include refid="Base_Column_List"/>
FROM student_t
<where>
<if test="list != null">
AND tea_id IN
<foreach collection="list" item="item" open="(" separator="," close=")">
#{item.id}
</foreach>
</if>
<if test="name != null">
AND name LIKE '%${name}%'
</if>
AND status = 1
</where>
ORDER BY create_time DESC
</select>

<!--方式二:-->
<select id="selectStuAllByTeaId" parameterType="java.util.Map" resultMap="BaseResultMap">
select
<include refid="Base_Column_List" />
from student_t
<where>
<if test="_parameter.containsKey('list')">
AND tea_id IN
<foreach collection="list" item="item" open="(" separator="," close=")">
#{item.id}
</foreach>
</if>
<if test="_parameter.containsKey('name')">
AND name LIKE '%${name}%'
</if>
</where>
order by create_time DESC
</select>

MyBatis动态sql语句归纳的更多相关文章

  1. mybatis实战教程(mybatis in action)之八:mybatis 动态sql语句

    mybatis 的动态sql语句是基于OGNL表达式的.可以方便的在 sql 语句中实现某些逻辑. 总体说来mybatis 动态SQL 语句主要有以下几类:1. if 语句 (简单的条件判断)2. c ...

  2. Mybatis 动态Sql语句《常用》

    MyBatis 的强大特性之一便是它的动态 SQL.如果你有使用 JDBC 或其他类似框架的经验,你就能体会到根据不同条件拼接 SQL 语句有多么痛苦.拼接的时候要确保不能忘了必要的空格,还要注意省掉 ...

  3. mybatis 动态sql语句(3)

    mybatis 的动态sql语句是基于OGNL表达式的.可以方便的在 sql 语句中实现某些逻辑. 总体说来mybatis 动态SQL 语句主要有以下几类: 1. if 语句 (简单的条件判断) 2. ...

  4. mybatis 动态sql语句(1)

    mybatis 的动态sql语句是基于OGNL表达式的.可以方便的在 sql 语句中实现某些逻辑. 总体说来mybatis 动态SQL 语句主要有以下几类: 1. if 语句 (简单的条件判断) 2. ...

  5. 【转】mybatis实战教程(mybatis in action)之八:mybatis 动态sql语句

    转自:除非申明,文章均为一号门原创,转载请注明本文地址,谢谢! 转载地址:http://blog.csdn.net/kutejava/article/details/9164353#t5 1. if ...

  6. 7. mybatis实战教程(mybatis in action)之八:mybatis 动态sql语句

    转自:http://www.kyjszj.com/htzq/79.html 1. if 语句 (简单的条件判断) 2. choose (when,otherwize) ,相当于java 语言中的 sw ...

  7. MyBatis学习总结(11)——MyBatis动态Sql语句

    MyBatis中对数据库的操作,有时要带一些条件,因此动态SQL语句非常有必要,下面就主要来讲讲几个常用的动态SQL语句的语法 MyBatis中用于实现动态SQL的元素主要有: if choose(w ...

  8. mybatis动态SQL语句

    一 if标签 ? 1 2 3 4 5 6 <select id=" getStudentListLikeName " parameterType="StudentE ...

  9. mybatis动态sql语句学习(一)

    动态 SQL MyBatis 的强大特性之一便是它的动态 SQL.如果你有使用 JDBC 或其他类似框架的经验,你就能体会到根据不同条件拼接 SQL 语句有多么痛苦.拼接的时候要确保不能忘了必要的空格 ...

随机推荐

  1. JavaScript十大古怪之处(出自众妙之门)

    1. null是一个对象: alert(typeof null);  //objects NULL表示没有值,那么很明显他不能作为任何东西的实例,所以下式应该等于false: alert(null i ...

  2. jQuery实现单击和鼠标感应事件。

    1.实现单击事件动态交替http://www.cnblogs.com/ahthw/p/4232837.html讲到了toggleClass(),对于单击事件而言,jQuery同样提供了动态交替的tog ...

  3. MySql 学习(一)

    入门使用 show databases; //假设存在seckill 数据库 use seckill; //查看所有表 show tables; //查看某个表的字段,例如存在 student 表 d ...

  4. ajax返回整个页面

       

  5. git config简写命令

    在多人协作开发时,一般用git来进行代码管理.git有一些命令如:git pull . git push等等,这些命令可以设置alias,也就是缩写.如:git pull 是 git pl, git ...

  6. Error:Execution failed for task ':xutils:mergeDebugAndroidTestResources'. > No slave process to proc

    Error:Execution failed for task ':xutils:mergeDebugAndroidTestResources'. > No slave process to p ...

  7. 记一次使用cmd执行java文件遇到的坑...包括“使用java命令运行class文件提示“错误:找不到或无法加载主类“的问题”

    今天写了一个java文件,类似聊天软件的东西.在eclipse里输入输出显得没感觉,于是乎就准备在cmd里输入和显示输出.如下图,我准备运行的是ChatDemo.class文件.路径是:D:\work ...

  8. css-flex布局知识梳理

    一.传统的布局 布局的传统解决方案,基于盒装模型,依赖 display 属性 + position属性 + float属性.它对于那些特殊布局非常不方便,比如,垂直居中就不容易实现. 二. Flex的 ...

  9. linux父子进程问题

    今天遇到一个linux进程启动时指定Max open files不对的问题,导致程序建立socket异常,进而导致fullgc问题,影响正常服务.所以顺带又温习了下linux下的父子进程的特性. 孤儿 ...

  10. html 表单button

    做一下标记: 请务必为form里面button设置type 因为: Internet Explorer 的默认类型是 "button",而其他浏览器中(包括 W3C 规范)的默认值 ...