mysql 获取分组后 最早或最后的第一条数据

 
更多

示例,现在有一用户操作日志表,现在需要获取所有用户各自最早的一次日志和最晚的一次日志,如下:

获取所有用户最早的一次日志记录:

SELECT log.*, MIN(log.create_time) AS create_time
FROM (
    SELECT `id`, `uid`, `type`, `create_time`
    FROM user_log
    ORDER BY create_time ASC
) log
GROUP BY uid;

获取所有用户最晚的一次日志记录:

SELECT log.*, MAX(log.create_time) AS create_time
FROM (
    SELECT `id`, `uid`, `type`, `create_time`
    FROM user_log
    ORDER BY create_time DESC
) log
GROUP BY uid;
打赏

本文固定链接: https://www.cxy163.net/archives/3231 | 绝缘体

该日志由 绝缘体.. 于 2020年10月08日 发表在 未分类 分类下, 你可以发表评论,并在保留原文地址及作者的情况下引用到你的网站或博客。
原创文章转载请注明: mysql 获取分组后 最早或最后的第一条数据 | 绝缘体
关键字: , , , ,

mysql 获取分组后 最早或最后的第一条数据:等您坐沙发呢!

发表评论


快捷键:Ctrl+Enter