1、首先需要将resultMap进行改造,为了避免对其他sql的影响建议另外定义一个resultMapExtral,避免id相同,

2、然后在resultMapExtral中添加其它表的字段,若多个表中的字段名相同,要对查询结果和resultMapExtral中相同的字段另起别名,

3、最后另外定义一个实体bean接收结果。相当于重新定义一个包含所有返回字段的entity,而不能用原先单表的entity。(RccpWorkerCenterCapacityEntityExtral)

4、也可以直接返回JsonObject对象,不用返回entity,这样就不需要用resultMap了,更简单一些。

定义结果集:

<resultMap id="BaseResultMapExtral"
type="com.cybertron.service.rccp.entity.RccpWorkerCenterCapacityEntityExtral">
<id column="workcenter_capacity_id" jdbcType="INTEGER"
property="workercenterCapacityId" />
<result column="process_number" jdbcType="INTEGER" property="processNumber" />
<result column="product_name" jdbcType="VARCHAR" property="productName" />
<result column="product_id" jdbcType="INTEGER" property="productId" />
<result column="average_volume" jdbcType="INTEGER" property="averageVolume" />
<result column="single_process_time" jdbcType="DOUBLE"
property="singleProcessTime" />
<result column="change_model_time" jdbcType="DOUBLE" property="changeModelTime" />
<result column="product_prepare_time" jdbcType="DOUBLE"
property="productPrepareTime" />
<result column="take_down_time" jdbcType="DOUBLE" property="takeDownTime" />
<result column="unit_transport_size" jdbcType="DOUBLE"
property="unitTransportSize" />
<result column="s_resource_id" jdbcType="NUMERIC" property="sResourceId" />
<result column="ad_wf_node_id" jdbcType="NUMERIC" property="adWfNodeId" />
<result column="name" jdbcType="VARCHAR" property="workcenterName" />
<result column="create_time" jdbcType="TIMESTAMP" property="createTime" />
<result column="create_user" jdbcType="VARCHAR" property="createUser" />
<result column="modify_time" jdbcType="TIMESTAMP" property="modifyTime" />
<result column="modify_user" jdbcType="VARCHAR" property="modifyUser" />
<result column="isdelete" jdbcType="BOOLEAN" property="isdelete" />
<result column="isdefault" jdbcType="BOOLEAN" property="checkDefault" />
<result column="is_key_wc" jdbcType="BOOLEAN" property="isKeyWc" />
<result column="parent_product_id" jdbcType="NUMERIC" property="paproductId" />
<result column="parentProductName" jdbcType="VARCHAR" property="parentProductName" />
<result column="adWfNodeName" jdbcType="VARCHAR" property="adWfNodeName" />
</resultMap>

sql查询语句:

<select id="queryAll" resultMap="BaseResultMapExtral">
select
rwc.* ,mp.name parentProductName,awn.name adWfNodeName
from rccp_workcenter_capacity rwc,m_product mp,ad_wf_node awn
where mp.m_product_id=rwc.parent_product_id and awn.ad_wf_node_id=rwc.ad_wf_node_id
</select>

mybatis中如何将多个表的查询结果,放入结果集中返回的更多相关文章

  1. 在查询时将查询条件放入Session中,导出时直接根据qpniRGaFiler取查询条件即可

    在查询时将查询条件放入Session中,导出时直接根据qpniRGaFiler取查询条件即可

  2. MyBatis中多对多关系的映射和查询

    先说一下需求: 在页面上显示数据库中的所有图书,显示图书的同时,显示出该图书所属的类别(这里一本书可能同时属于多个类别) 创建表: 笔者这里使用 中间表 连接 图书表 和 图书类别表,图书表中 没有使 ...

  3. Mybatis中的Mapper.xml映射文件sql查询接收多个参数

    ​ 我们都知道,在Mybatis中的Mapper.xml映射文件可以定制动态SQL,在dao层定义的接口中定义的参数传到xml文件中之后,在查询之前mybatis会对其进行动态解析,通常使用#{}接收 ...

  4. hive中创建hive-json格式的表及查询

    在hive中对于json的数据格式,可以使用get_json_object或json_tuple先解析然后查询. 也可以直接在hive中创建json格式的表结构,这样就可以直接查询,实战如下(hive ...

  5. MyBatis中动态SQL语句完成多条件查询

    一看这标题,我都感觉到是mybatis在动态SQL语句中的多条件查询是多么的强大,不仅让我们用SQL语句完成了对数据库的操作:还通过一些条件选择语句让我们SQL的多条件.动态查询更加容易.简洁.直观. ...

  6. mybatis中xml字段空判断及模糊查询

    由于业务特殊的查询需求,需要下面的这种查询,一直感觉模糊不清,本地测试一下顺便做个总结 贴一段xml代码,如下: <if test="receivedName != null and ...

  7. 七十七、SAP中数据库操作之多表联合查询

    一.我们看一下SFLIGHT表和SPFLI表,表结构如下 二.这2个表的数据如下 三.我们代码如下 四.多表联合查询结果如下

  8. SSM-MyBatis-05:Mybatis中别名,sql片段和模糊查询加getMapper

    ------------吾亦无他,唯手熟尔,谦卑若愚,好学若饥------------- 简单概述一下本讲 别名,sql片段简单写一下,模糊查询多写一点 一.别名 <typeAliases> ...

  9. 在Mybatis中使用注解@多个參数查询

    @Select("SELECT * FROM wc_homework WHERE organization_id=#{classId} ORDER BY createtime DESC LI ...

随机推荐

  1. Eclipse新项目检出后报错第一步:导入lib中的jar包【我】

    新检出项目报错,第一步,先看项目 web-info下的 lib目录里的包是不是都添加到项目构建中了,可以全选先添加到项目构建中,看项目是否还在报错.

  2. IDEA 开发javafx: error: java:package javafx.application does not exist

    1)jdk使用1.8, 1.7中未包含javafx相关内容. 2)确保classpath中加入了javafx包路径. 在“file” --> "project structure&qu ...

  3. jwplayer :若请求不到流,则页面一直转圈请求效果

    思路: 利用jwplayer onPlay(播放) .onError(出错)事件. 页面:背景图为黑色,嵌入一张背景为黑色的 git 动态图,加载页面时隐藏. 流程:若进入到onPlay 方法,则说明 ...

  4. node端代理浏览器路由 解决浏览器跨域问题

    var _ = require('lodash'); var request = require("request"); /* @LM 2017-02-16 node端代理浏览器路 ...

  5. python:pytest中的setup和teardown

    原文:https://www.cnblogs.com/peiminer/p/9376352.html 之前我写的unittest的setup和teardown,还有setupClass和teardow ...

  6. NGINX安全配置和限制访问

    说起网络攻击,可能很多人只知道大名鼎鼎的DDOS攻击,这种攻击廉价且效果出众,直接通过第四层网络协议用他的带宽把你的带宽顶掉,造成网路阻塞,防不胜防,就连腾讯这种大鳄公司也被大流量DDOS搞过焦头烂额 ...

  7. 第2/7Beta冲刺

    1.团队成员 成员姓名 成员学号 秦裕航 201731062432(组长) 刘东 201731062227 张旭 201731062129 王伟 201731062214 2.SCRU部分 2.1各成 ...

  8. 原生js监听input值发生变化

    原生JS中可以使用oninput,onpropertychange,onchange oninput,onpropertychange,onchange的用法 1) onchange 触发事件必须满足 ...

  9. Kafka序列化和反序列化与示例

    1.  卡夫卡序列化和反序列化 今天,在这篇Kafka SerDe文章中,我们将学习使用Kafka创建自定义序列化器和反序列化器的概念.此外,我们将了解序列化在Kafka中的工作原理以及为什么需要序列 ...

  10. Delphi百度语音【支持语音识别和语音合成】

    作者QQ:(648437169) 点击下载➨百度语音         语音识别api文档         语音合成api文档 [Delphi 百度语音]支持获取 Access Token.语音识别.语 ...