有班级表,老师表,要求给定班级id查出班级信息和班级对应的老师信息

1、使用嵌套结果方式

sql语句:

<select id="findClasses" parameterType="int" resultMap="findClassesMap">
select c.*,t.t_name from classes c,teacher t where c.t_id = t.t_id and c.c_id =#{id} ;
</select>
<resultMap type="Classes" id="findClassesMap">
<id property="id" column="c_id"/>
<result property="name" column="c_name"/>
<association property="teacher" javaType="Teacher">
<id property="id" column="t_id"/>
<result property="name" column="t_name"/>
</association>
</resultMap>

2、使用嵌套查询方式

select * from class where c_id = #{id}

select * from teacher where t_id = #{teacher_id} //使用上一个查询的结果teacher_id

<select id="findClasses2" parameterType="int" resultMap="findClasses2Map">
select * from classes where c_id=#{id}
</select>
<resultMap type="Classes" id="findClasses2Map">
<id property="id" column="c_id"/>
<result property="name" column="c_name"/>
<association property="teacher" select="findTeacher" column="t_id">
</association>
</resultMap>
<select id="findTeacher" parameterType="int" resultType="Teacher">
select t_id id,t_name name from teacher where t_id = #{t_id}
</select>

在association节点中配置两个属性column指上次查询结果哪个字段作为下一次查询的参数条件 select指对应的查询

最新文章

  1. IT基础架构规划方案一(网络系统规划)
  2. nginx :413 Request Entity Too Large
  3. json和字符串转换
  4. 如何签名apk,并让baidu地图正常显示
  5. Codeforces 603A Alternative Thinking
  6. poj 1056 IMMEDIATE DECODABILITY(KMP)
  7. HashMap源码阅读
  8. Pandas 基础(17) - to_datetime
  9. Postgresql-模糊匹配大杀器
  10. hdu-5687(字典树)
  11. 最大子数组(I, II, III,IV,V)和最大子数组乘积 (动态规划)
  12. 梯度下降(gradient descent)算法简介
  13. Pycharm自动添加文件头
  14. sharpkeys键盘按键重映射
  15. Safari导入书签
  16. C#中ASCII码与字符串的互换
  17. Grails开发环境的高速搭建
  18. Spring源码分析之——导入spring-framework源代码到Eclipse
  19. webgl学习笔记四-动画
  20. 一个简单的异常/条件重试类(C#)

热门文章

  1. shell使用随笔
  2. IT公司100题-27-跳台阶问题
  3. 转帖不会乱码的,powershell网络蜘蛛
  4. androidd 程序默认安装位置和数据存储位置(公用和私用)
  5. Hbase中的BloomFilter(布隆过滤器)
  6. javascript钩子机制
  7. poj2502 最短路
  8. struts2 标签 和 c标签的页面数据显示
  9. UE4 C++ 使用FTimeLine/FTime 实例 Actor moving faster than Timeline
  10. HDU1005(矩阵快速幂)