1.使用mybatis时候,经常涉及到多张表之间相互关联取其中的某些字段。
有时候可能要去两张表的某些字段名相同
下面两张表是通过第三张关联表相互关联的,这里就不展示
下面的两个表都有name的相同字段
如何取得两张表的两个name值呢?
<resultMap id="BaseResultMap" type="cn.runlin.jetta.entity.JettaTask">
<id column="task_id" jdbcType="INTEGER" property="taskId" />
<result column="version_id" jdbcType="INTEGER" property="versionId" />
<result column="project_id" jdbcType="INTEGER" property="projectId" />
<result column="scope" jdbcType="BIT" property="scope" />
<result column="sort" jdbcType="INTEGER" property="sort" />
<result column="title" jdbcType="VARCHAR" property="title" />
<result column="is_delete" jdbcType="BIT" property="isDelete" />
<result column="add_time" jdbcType="TIMESTAMP" property="addTime" />
<result column="up_time" jdbcType="TIMESTAMP" property="upTime" />
<result column="name" jdbcType="VARCHAR" property="name" />
<result column="projectName" jdbcType="VARCHAR" property="projectName" />
</resultMap>
select
task_id, jt.version_id, jt.project_id, scope, jt.sort,
title, jt.is_delete, jt.add_time, jt.up_time,
//在相同表中一个加上别名projectName
jv.name, jp.name projectName
from jetta_task jt
LEFT OUTER JOIN jetta_version jv
ON jt.version_id=jv.version_id
LEFT OUTER JOIN jetta_project jp
ON jt.project_id=jp.project_id
WHERE jt.is_delete=1
这样就解决了取相同字段冲突的问题了
最后
以上就是老实唇膏最近收集整理的关于Mybatis之取两张表中存在相同字段名的全部内容,更多相关Mybatis之取两张表中存在相同字段名内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复