MyBatis动态sql语句归纳
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语句归纳的更多相关文章
- mybatis实战教程(mybatis in action)之八:mybatis 动态sql语句
mybatis 的动态sql语句是基于OGNL表达式的.可以方便的在 sql 语句中实现某些逻辑. 总体说来mybatis 动态SQL 语句主要有以下几类:1. if 语句 (简单的条件判断)2. c ...
- Mybatis 动态Sql语句《常用》
MyBatis 的强大特性之一便是它的动态 SQL.如果你有使用 JDBC 或其他类似框架的经验,你就能体会到根据不同条件拼接 SQL 语句有多么痛苦.拼接的时候要确保不能忘了必要的空格,还要注意省掉 ...
- mybatis 动态sql语句(3)
mybatis 的动态sql语句是基于OGNL表达式的.可以方便的在 sql 语句中实现某些逻辑. 总体说来mybatis 动态SQL 语句主要有以下几类: 1. if 语句 (简单的条件判断) 2. ...
- mybatis 动态sql语句(1)
mybatis 的动态sql语句是基于OGNL表达式的.可以方便的在 sql 语句中实现某些逻辑. 总体说来mybatis 动态SQL 语句主要有以下几类: 1. if 语句 (简单的条件判断) 2. ...
- 【转】mybatis实战教程(mybatis in action)之八:mybatis 动态sql语句
转自:除非申明,文章均为一号门原创,转载请注明本文地址,谢谢! 转载地址:http://blog.csdn.net/kutejava/article/details/9164353#t5 1. if ...
- 7. mybatis实战教程(mybatis in action)之八:mybatis 动态sql语句
转自:http://www.kyjszj.com/htzq/79.html 1. if 语句 (简单的条件判断) 2. choose (when,otherwize) ,相当于java 语言中的 sw ...
- MyBatis学习总结(11)——MyBatis动态Sql语句
MyBatis中对数据库的操作,有时要带一些条件,因此动态SQL语句非常有必要,下面就主要来讲讲几个常用的动态SQL语句的语法 MyBatis中用于实现动态SQL的元素主要有: if choose(w ...
- mybatis动态SQL语句
一 if标签 ? 1 2 3 4 5 6 <select id=" getStudentListLikeName " parameterType="StudentE ...
- mybatis动态sql语句学习(一)
动态 SQL MyBatis 的强大特性之一便是它的动态 SQL.如果你有使用 JDBC 或其他类似框架的经验,你就能体会到根据不同条件拼接 SQL 语句有多么痛苦.拼接的时候要确保不能忘了必要的空格 ...
随机推荐
- angularJS请求参数 ajax
1. 使用angular服务请求 app.controller('main', function($scope, $http) { $scope.fun1 = function () { $http( ...
- number_formate 货币金额或数量格式化
$row['formated_goods_price'] = number_format($row['goods_price'], 2, '.', ''); number_format() 函数 ...
- 1、springboot之HelloWorld
最基本的,官网copy 创建maven项目 maven中添加 <parent> <groupId>org.springframework.boot</groupId> ...
- Angular的生命周期钩子
没有什么不能用一张图来解决.
- easyui grid 增加合计行
一.首先,easyui grid 的 showfooter 属性设置为 true $aplgrid.datagrid({ data: globalExpenseClaimForm.ExpenseCl ...
- Django—middleware
一.Django中间件的请求周期 我们从浏览器发出一个请求 Request,得到一个响应后的内容 HttpResponse ,这个请求传递到 Django的过程如下: 也就是说,每一个请求都是先通过中 ...
- GEOS编译
GEOS是开源的空间运算引擎,最近用到,在这里记录下. 目录 GEOS简介 GEOS编译 一.GEOS简介 GEOS(几何引擎 - 开源)是一个具有完整空间查询和分析功能的C++库.它包括所有Open ...
- Unity使Text 文字逐个出现
Text tex; string s="Unity使Text 文字逐个出现"; //字符出现间隔 waitTime = 0.3f; // float speed=0; //方法一 ...
- SpringMVC学习(五)——拦截器示例
部分内容摘自开涛的<跟我学SpringMVC.PDF> 拦截器,本质类似于AOP,主要的应用场景: 1.日志记录:记录请求信息的日志,以便进行信息监控.信息统计.计算PV等. 2.权限检查 ...
- less @import and extend及mixin详解
在less中,通过 @import (keyword) "filename"的方式引入其他的文件,这个keyword可以是以下6种: referrence referrence这个 ...