mybatis association 多参数查询

本文详细解析了MyBatis中使用resultMap进行复杂关联查询的方法,通过具体示例展示了如何设置association标签实现多表关联,以及如何正确配置column和property属性,确保数据的准确映射。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  • resultMap

        <association column="STR_ID=B2,VIN=B3" property="dataList" select="selectSql"></association>

复制代码
  • 其中column是键值对形式,中间用,分割,值为当前sql中的值,键为关联sql中的参数

  • 当前sql

       SELECT
            s.`NAME`,
            s.`LEVEL`,
			s.`BUSINESS_ID` as B2,  //B2 B3为需要进行关联查询的参数值
			#{vin} as B3
        FROM
            b_ev_fleet_structure s
        WHERE
            s.EV_FLEET_ID = #{evFleetId}
        AND s.`LEVEL` = 2
        AND s.flag = 1
        AND s.del_flag = 0
        ORDER BY
            s.ORDER_NUM
复制代码
  • 关联sql

//parameterType的java.util.Map
    <select id="queryByPid" parameterType="java.util.Map"  
 resultMap="QueryByEvFleetIdWithListResultMap">
        SELECT
            s.`NAME`,
            s.`LEVEL`,
            s.`BUSINESS_ID` as B1,
			s.`BUSINESS_ID` as B2,
			#{VIN} as B3  //VIN 为关联sql中的参数名
        FROM
            b_ev_fleet_structure s
        WHERE
         s.`LEVEL` = 3
        AND s.`PID` = #{PID}
        AND s.flag = 1
        AND s.del_flag = 0
        ORDER BY
        s.ORDER_NUM
    </select>
复制代码
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值