mysql一对多关联查询分页错误问题的解决方法

 更新时间:2018年09月13日 09:54:22   作者:会迟到但不会缺席  
这篇文章主要介绍了mysql一对多关联查询分页错误问题的解决方法,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下

xml问价中查询数据中包含list,需要使用collection

<resultMap id="XX" type="com.XXX.XXXX">
    <id column="o_id" jdbcType="BIGINT" property="id" />
    <result column="o_user_id" jdbcType="BIGINT" property="userId" />
    ....
    <collection property="orderProductList" ofType="com.XXXXXX.XXXXX">
      <id column="p_id" jdbcType="BIGINT" property="id" />
      <result column="p_order_id" jdbcType="BIGINT" property="orderId" />
      ....
    </collection>
  </resultMap>

这样的查询系统封装的通用分页查询是不对的,所以需要自己sql中加入分页解决

<select id="XXX" resultMap="OrderListMap">
    SELECT
    you.nick_name,
    yo.id o_id,
    yo.user_id o_user_id
    FROM
    (
    SELECT * FROM
    youpin_order
    WHERE
    1 = 1
    <if test="status != null">
      and `status` = #{status}
    </if>
    <if test="page != null and limit != null">
    LIMIT #{page},
    #{limit}
    </if>
    ) yo
    LEFT JOIN XXX yop ON yo.id = yop.order_id
    LEFT JOIN XXXX you ON yo.user_id = you.id
  </select>

传入参数的时候需要计算

(offset - 1) * limit, limit

总结

以上所述是小编给大家介绍的mysql一对多关联查询分页错误问题的解决方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

相关文章

  • Mysql 日期时间 DATE_FORMAT(date,format)

    Mysql 日期时间 DATE_FORMAT(date,format)

    Mysql 日期时间 DATE_FORMAT(date,format) ,需要的朋友可以参考下。
    2010-12-12
  • 运维角度浅谈MySQL数据库优化(李振良)

    运维角度浅谈MySQL数据库优化(李振良)

    一个成熟的数据库架构并不是一开始设计就具备高可用、高伸缩等特性的,它是随着用户量的增加,基础架构才逐渐完善。这篇博文主要谈MySQL数据库发展周期中所面临的问题及优化方案
    2015-07-07
  • mysql5.7创建用户授权删除用户撤销授权

    mysql5.7创建用户授权删除用户撤销授权

    这篇文章主要介绍了mysql5.7创建用户授权删除用户撤销授权的方法,非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2017-02-02
  • MySQL存储毫秒数据的方法

    MySQL存储毫秒数据的方法

    MySQL中没有可以直接存储毫秒数据的数据类型,但是不过MySQL却能识别时间中的毫秒部分。这篇文章主要介绍了MySQL存储毫秒数据的方法,需要的朋友可以参考下
    2014-06-06
  • Mysql数据库主从同步的实现示例

    Mysql数据库主从同步的实现示例

    本文主要介绍了Mysql数据库主从同步的实现示例,包括配置文件设置、账户创建、同步命令及错误处理,具有一定的参考价值,感兴趣的可以了解一下
    2025-06-06
  • MySQL 存储引擎  MyISAM详解(最新推荐)

    MySQL 存储引擎  MyISAM详解(最新推荐)

    使用 MyISAM 存储引擎的表占用空间很小,但是由于使用表级锁定,所以限制了读/写操作的性能,通常用于中小型的Web应用和数据仓库配置中的只读或主要是读的场景,这篇文章主要介绍了MySQL 存储引擎  MyISAM详解,需要的朋友可以参考下
    2025-05-05
  • MySQL8.0 MGR的维护管理

    MySQL8.0 MGR的维护管理

    数据库已成为企业和管理员们最为关注的核心组件之一,本文主要介绍了MySQL8.0 MGR的维护管理,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2024-08-08
  • mysql实现connect by start with方式

    mysql实现connect by start with方式

    本文介绍了MySQL中实现层级查询的几种方法,并分享了一种使用变量循环赋值的方式,通过实验验证了该方法的有效性
    2024-12-12
  • Navicat Premium15连接云服务器中的数据库问题及遇到坑

    Navicat Premium15连接云服务器中的数据库问题及遇到坑

    这篇文章主要介绍了Navicat Premium15连接云服务器中的数据库问题及遇到坑,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-03-03
  • MySQL启动报错提示发生系统错误5,拒绝访问的原因和解决方法

    MySQL启动报错提示发生系统错误5,拒绝访问的原因和解决方法

    使用命令net start mysql启动数据库服务时候,出现如下错误提示发生系统错误5,拒绝访问,所以本文给大家介绍了MySQL启动报错提示发生系统错误5,拒绝访问的原因和解决方法,需要的朋友可以参考下
    2024-01-01

最新评论