mybatis 一对多分页查询数据条数不匹配解决

原因

在项目中,使用mybatis做一对多关联,出现数据条数不匹配的情况,比如要查询10条,由于一对多的关系导致最终得到的数据条数变少。

解决方案(1)

<select id="list" parameterType="emro.vo.resource.ResourceConfigDetailSearchVo" resultMap="resourceConfigDetails">
    SELECT
      detail.id id,
      detail.activity_name activityName,
      detail.main_title mainTitle,
      detail.main_title_spec mainTitleSpec,
      detail.sub_title subTitle,
      detail.desc_copy descCopy,
      detail.order_sn orderSn,
      detail.start_time startTime,
      detail.end_time endTime,
      detail.enable enable,
      detail.user_tag userTag,
      detail.pic_num picNum,
      detail.tag tag,
      detail.terminal_type terminalType,
      detail.pop_rate popRate,
      detail.status status,
      detail.create_name createName,
      detail.create_time createTime,
      detail.update_name updateName,
      detail.update_time updateTime,
      item.detail_id detailId,
      item.pc_image pcImage,
      item.pc_jump_url pcJumpUrl,
      item.background_color backgroundColor,
      item.mobile_image mobileImage,
      item.app_jump_url appJumpUrl,
      item.mp_jump_url mpJumpUrl
    FROM
    resource_config_detail detail
    LEFT JOIN resource_config_detail_item item ON detail.id = item.detail_id
    WHERE
    detail.id IN (IFNULL((SELECT temp.id
    FROM (SELECT config_detail.id FROM
    resource_config_detail config_detail
    where config_detail.status='1'
    <include refid="queryTerm"/>
    ORDER BY config_detail.order_sn DESC,config_detail.end_time DESC
    limit #{page},#{rows}) AS temp),''))
  </select>

解决方案(二)

<id property="id" column="id"/>
 
<collection property="items"    ofType="com.test..domain.BookDetail"
                   column="id" select="com.test.dao.BookDetailDao.getCheckItemInfo"/>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值