级联查询

Posted yangfei969

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了级联查询相关的知识,希望对你有一定的参考价值。

<resultMap id="BaseResultMap" type="com.beta.cas.model.AuthModel">
        <id column="id" property="id" />
        <result column="name" property="name" />
        <result column="status" property="status" />
        <result column="levels" property="levels" />
        <result column="parent_id" property="parentId" />
        <result column="url" property="url" />
        <result column="show" property="show" />
        <result column="icon" property="icon" />
        <result column="sort" property="sort" />
        <result column="permission" property="permission" />
        <result column="creator_id" property="creatorId" />
        <result column="creator" property="creator" />
        <result column="create_time" property="createTime" />
        <result column="modify_id" property="modifyId" />
        <result column="modify_by" property="modifyBy" />
        <result column="modify_time" property="modifyTime" />
        <result column="app_id" property="appId" />
        <collection property="children" ofType="com.beta.cas.model.AuthModel" select="selectByParentId" column="id"></collection>
    </resultMap>
    <select id="findById" resultMap="BaseResultMap" parameterType="long">
        select * from auth where id = #{id}
    </select>
    <select id="findByAppId" resultMap="BaseResultMap">
        select * from auth where app_id = #{appId} and levels = #{levels} order by id
    </select>
    <select id="selectByParentId" resultMap="BaseResultMap">
        select am.* from auth am  where am.parent_id=#{parentId}
    </select>

如果返回一个对象,可以增加

<association property="parent" javaType="com.beta.cas.model.AuthModel" select="findById" column="parent_id"></association>

如果返回一个集合,则必须去掉

否则出现高度递归情况

以上是关于级联查询的主要内容,如果未能解决你的问题,请参考以下文章

Oracle啥是级联查询

thinkphp在关联模型中三表级联查询

openstack 修改卷状态

SQL级联查询 商品类型级联菜单查询

mybatis怎么有条件的级联查询????

1128 聚合查询 orm字段及属性