进击的大菜鸟 2021-03-17 15:02 采纳率: 83.3%
浏览 129
已结题

mysql查询一年内每月的最后一条记录

各位大佬,我有两张表,一张基础表,一张数据表(存基础表id),我现在要获取基础表每条记录对应的近一年内,每个月的最后一条记录,sql该怎么写,

  • 写回答

2条回答 默认 最新

  • Mr.Songx 2021-03-17 15:29
    关注

    select * from data_table where id in (select max(id) from data_table where fkid in (select id from basic_table)group by date_format(joinDatetime, '%Y%m') order by id desc)

    说明:子查询先根据时间字段进行分组统计并根据主键倒序排序(或者其他有序的字段),取每组中的最大id就是最后一条记录,然后在父查询中使用id进行查询

    评论

报告相同问题?