MyBatis多表联合查询对应多实体返回List 转自 https://www.cnblogs.com/sxdcgaq8080/p/9441860.html

    select 
        a.id as 'id',
        a.uid as 'uid',
        a.create_date as 'createDate',
        a.update_date as 'updateDate',
        a.update_id as 'updateId',
        a.create_id as 'createId',
        a.brand_uid as 'brandUid',
        a.tid as 'tid',
        a.stock as 'stock',
        a.name as 'name',
        a.goods_code as 'goodsCode',
        a.market_value as 'marketValue',
        a.specification as 'specification',
        a.remark as 'remark',
        a.integral as 'integral',
        a.description as 'description',
        a.sale_num as 'saleNum',
        a.limit_num as 'limitNum',
        a.shelf_flag as 'shelfFlag',
        a.home_show_flag as 'homeShowFlag',
        sl.shelf_date as 'shelfDate',
        sl.obtained_date as 'obtainedDate',
        b.src b_src,
        b.type b_type,
        b.sort  b_sort
    from 
        integral_goods a
    left join
        integral_goods_img b
    on 
        a.uid = b.integral_goods_id
    left join
        shelf_log sl
    on a.uid = sl.integral_goods_uid
    <where>
        a.delete_flag = ${@com.pisen.cloud.luna.ms.jifen.base.domain.IntegralGoods@DELETE_FLAG_DISDELETE}
        and a.tid = #{tid}

    <if test="uid != null and uid != '' ">
        and a.uid = #{uid}
    </if>

    <if test="brandUid != null and brandUid != '' ">
        and a.brand_uid = #{brandUid}
    </if>

    <if test="name != null and name != '' ">
        and a.name like CONCAT('%',#{name},'%')
    </if>

    </where>

</select>

<resultMap type="com.pisen.cloud.luna.ms.jifen.base.domain.IntegralGoods" id="baseResBean">

    <id column="id" property="id"/>
    <result column="uid" property="uid"/>
    <result column="createDate" property="createDate"/>
    <result column="updateDate" property="updateDate"/>
    <result column="createId" property="createId"/>
    <result column="updateId" property="updateId"/>
    <result column="type" property="type"/>
    <result column="tid" property="tid"/>
    <result column="stock" property="stock"/>
    <result column="name" property="name"/>
    <result column="goodsCode" property="goodsCode"/>
    <result column="marketValue" property="marketValue"/>
    <result column="specification" property="specification"/>
    <result column="brandUid" property="brandUid"/>
    <result column="remark" property="remark"/>
    <result column="integral" property="integral"/>
    <result column="description" property="description"/>
    <result column="saleNum" property="saleNum"/>
    <result column="limitNum" property="limitNum"/>
    <result column="shelfFlag" property="shelfFlag"/>
    <result column="homeShowFlag" property="homeShowFlag"/>
    <result column="shelfDate" property="shelfDate"/>
    <result column="obtainedDate" property="obtainedDate"/>
    
    <collection 
        property="imgList" 
        columnPrefix="b_"
        ofType="com.pisen.cloud.luna.ms.jifen.base.domain.IntegralGoodsImg"
        >
        <id column="id" property="id"/>
        <result column="src" property="src"/>
        <result column="type" property="type"/>
        <result column="sort" property="sort"/>

    </collection>
    
    
</resultMap>

查询结果

    select 
        a.id as 'id',
        a.uid as 'uid',
        a.create_date as 'createDate',
        a.update_date as 'updateDate',
        a.update_id as 'updateId',
        a.create_id as 'createId',
        a.brand_uid as 'brandUid',
        a.tid as 'tid',
        a.stock as 'stock',
        a.name as 'name',
        a.goods_code as 'goodsCode',
        a.market_value as 'marketValue',
        a.specification as 'specification',
        a.remark as 'remark',
        a.integral as 'integral',
        a.description as 'description',
        a.sale_num as 'saleNum',
        a.limit_num as 'limitNum',
        a.shelf_flag as 'shelfFlag',
        a.home_show_flag as 'homeShowFlag',
        sl.shelf_date as 'shelfDate',
        sl.obtained_date as 'obtainedDate',
        b.src b_src,
        b.type b_type,
        b.sort  b_sort
    from 
        integral_goods a
    left join
        integral_goods_img b
    on 
        a.uid = b.integral_goods_id
    left join
        shelf_log sl
    on a.uid = sl.integral_goods_uid
    <where>
        a.delete_flag = ${@com.pisen.cloud.luna.ms.jifen.base.domain.IntegralGoods@DELETE_FLAG_DISDELETE}
        and a.tid = #{tid}

    <if test="uid != null and uid != '' ">
        and a.uid = #{uid}
    </if>

    <if test="brandUid != null and brandUid != '' ">
        and a.brand_uid = #{brandUid}
    </if>

    <if test="name != null and name != '' ">
        and a.name like CONCAT('%',#{name},'%')
    </if>

    </where>

</select>

<resultMap type="com.pisen.cloud.luna.ms.jifen.base.domain.IntegralGoods" id="baseResBean">

    <id column="id" property="id"/>
    <result column="uid" property="uid"/>
    <result column="createDate" property="createDate"/>
    <result column="updateDate" property="updateDate"/>
    <result column="createId" property="createId"/>
    <result column="updateId" property="updateId"/>
    <result column="type" property="type"/>
    <result column="tid" property="tid"/>
    <result column="stock" property="stock"/>
    <result column="name" property="name"/>
    <result column="goodsCode" property="goodsCode"/>
    <result column="marketValue" property="marketValue"/>
    <result column="specification" property="specification"/>
    <result column="brandUid" property="brandUid"/>
    <result column="remark" property="remark"/>
    <result column="integral" property="integral"/>
    <result column="description" property="description"/>
    <result column="saleNum" property="saleNum"/>
    <result column="limitNum" property="limitNum"/>
    <result column="shelfFlag" property="shelfFlag"/>
    <result column="homeShowFlag" property="homeShowFlag"/>
    <result column="shelfDate" property="shelfDate"/>
    <result column="obtainedDate" property="obtainedDate"/>
    
    <collection 
        property="imgList" 
        columnPrefix="b_"
        ofType="com.pisen.cloud.luna.ms.jifen.base.domain.IntegralGoodsImg"
        >
        <id column="id" property="id"/>
        <result column="src" property="src"/>
        <result column="type" property="type"/>
        <result column="sort" property="sort"/>

    </collection>
    
    
</resultMap>
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值