mybatisplus自定义xml的sql语句进行自动分页

1、xxxMapper.xml定义

<select id="leftJoinPageList" resultMap="MonitoringDataResult"
        parameterType="com.ktt.carbon.verification.domain.bo.MonitoringDataBo">
    SELECT d.* from carbon_monitoring_data d LEFT JOIN carbon_monitoring_site s on d.site_id=s.id
    <where>
        <if test="bo.siteName != null">
            and site_name like concat('%',#{bo.siteName},'%')
        </if>
        <if test="bo.siteNumber != null">
            and site_number like concat('%',#{bo.siteNumber},'%')
        </if>
        <if test="bo.siteNumber != null">
            and site_number like concat('%',#{bo.siteNumber},'%')
        </if>
    </where>
    where s.site_name like "%test1%"
</select>

2、xxMapper.xml

/**
 * 左连接站点表分页查询
 */
Page<CarbonMonitoringDataVo> leftJoinPageList(IPage pageQuery, @Param("bo") MonitoringDataBo bo);

3、使用

@Override
public TableDataInfo<MonitoringDataVo> groupByPageList(MonitoringDataBo bo, PageQuery pageQuery) {
    Page<CarbonMonitoringDataVo> carbonMonitoringDataPage = baseMapper.leftJoinPageList(pageQuery.build(), bo);
    List<MonitoringDataVo> records = MonitoringDataPage.getRecords();
    return TableDataInfo.build(carbonMonitoringDataPage);
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
对于MyBatis Plus的自定义分页查询语句,你可以按照以下步骤进行操作: 1. 首先,在你的Mapper接口中定义自定义分页查询方法。例如,你可以在Mapper接口中创建一个名为"customPageQuery"的方法。 2. 在该方法中,使用@Param注解为查询参数命名,并使用Page对象作为返回值。例如,你可以使用@Param("param1")注解指定一个查询参数,并返回一个Page对象。 3. 在Mapper对应的Mapper XML文件中,编写自定义分页查询语句。你可以使用<select>标签,并在其中编写你的查询逻辑,使用LIMIT关键字来实现分页。在LIMIT子句中,可以使用Page对象提供的getOffset()和getSize()方法获取分页的偏移量和每页查询的数量。 通过以上步骤,你就可以实现自定义分页查询语句了。请注意,在使用自定义分页查询语句时,你需要手动处理分页的逻辑,包括计算总记录数、设置Page对象的总记录数等操作。这样可以避免不必要的性能消耗。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [MyBatis-Plus 分页查询以及自定义sql分页](https://blog.csdn.net/xm393392625/article/details/129901169)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值