qq_41908367 2022-07-11 10:15 采纳率: 90.4%
浏览 51
已结题

请问mysql 如何取每组前三条

如图,查询出来的数据再按d.detail_id分组,然后每组取前三条通过时间排序要怎么做

img

  • 写回答

1条回答 默认 最新

  • 三千烦恼丝xzh 2022-07-11 11:36
    关注

    MySQL8.0的窗口函数,row_number()分区发号where过滤排名大于3的就行了
    row_number() ovrr(partition by d.detail_id order by d.create_time) rn

    where rn < 4

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 7月19日
  • 已采纳回答 7月11日
  • 创建了问题 7月11日