MYSQL,查询列表,一张主表一张子表,一主多子,查询的时候把最新的子数据查出来

MYSQL,查询列表,一张主表一张子表,一主多子,查询的时候把最新的子数据查出来
1、一张主表,一张子表,一主多子,分页查询的时候,不仅主表信息带出而且要有子表的最新数据,没有子表信息,主表信息也要展示出来。
2、乍一看好像简单,但实际并不简单,简单的左连或者是右连根本无法满足需求。
3、主要难点就是在子表中查询出每个主表数据的最新数据。因此先对子表进行排序。

将子数据按照主表的主键分组,然后排序,每个分组内的行分配1个行号,最新的子数据(即时间戳最大的)会被分配行号1。

select
 sub.*,
ROW_NUMBER()OVER(PARTITION BY sub.EMERGENCE_ID ORDER BY sub.CREATE_TIME DEsc ) rn
        from mem_emergence_record sub
        join mem_emergence_plan main ON sub.EMERGENCE_ID  = main.id

4、再关联主表取数据即可:

 WITH RankedSubTable As(
select
sub.*,
ROW_NUMBER()OVER(PARTITION BY sub.EMERGENCE_ID ORDER BY sub.CREATE_TIME DEsc) as rn
        from mem_emergence_record sub -- 子表
        join mem_emergence_plan main ON sub.EMERGENCE_ID  = main.id
        )
        SELECT
        t1.*,
        t2.PLAN_REVIEWED_COMMENTS planReviewedComments
        -- 这里写你需要的查询结果
        from mem_emergence_plan t1 -- 主表
        LEFT join RankedSubTable t2 ON t1.id= t2.EMERGENCE_ID AND t2.rn = 1
        where t1.`STATUS`=1
        --这里写需要的查询条件

相关推荐

  1. [每日练]利用查询查询出现最大数字

    2024-03-26 09:24:09       7 阅读
  2. MySQL物理拷贝Innodb方法

    2024-03-26 09:24:09       24 阅读
  3. Oracle恢复数据库时刻数据

    2024-03-26 09:24:09       31 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-03-26 09:24:09       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-03-26 09:24:09       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-03-26 09:24:09       19 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-03-26 09:24:09       20 阅读

热门阅读

  1. LeetCode 面试经典150题 125.验证回文串

    2024-03-26 09:24:09       14 阅读
  2. LeetCode Hot100-哈希-两数之和

    2024-03-26 09:24:09       18 阅读
  3. 前端埋点解决方案

    2024-03-26 09:24:09       20 阅读
  4. Redis分布式锁实现

    2024-03-26 09:24:09       20 阅读
  5. C语言数据结构面试常见问题及答案

    2024-03-26 09:24:09       18 阅读
  6. Apache SeaTunnel 初识

    2024-03-26 09:24:09       16 阅读
  7. 模 块 篇

    2024-03-26 09:24:09       15 阅读
  8. iPhone 15 Pro LiDAR Module模组逆向(2024.3.23)

    2024-03-26 09:24:09       19 阅读
  9. 【Pandas】(5) eval和query

    2024-03-26 09:24:09       19 阅读
  10. 洛谷刷题 | B3621 枚举元组

    2024-03-26 09:24:09       18 阅读
  11. 每天一个数据分析题(二百二十七)

    2024-03-26 09:24:09       22 阅读
  12. Spark 检查点(checkpoint)

    2024-03-26 09:24:09       17 阅读