zoukankan      html  css  js  c++  java
  • mysql根据某个字段分组根据更新时间获取最新的记录

    我现在有一种统计表,要根据一个字段分组然后根据更新时间,每个分组获取最新的一条记录。命名感觉挺简单的一个需求,然而没什么思路,当然是问度娘了。

    度娘的答案很统一,然而都不管用,都是报错的,不知道是不是因为mysql5.7的原因,不过我记得group by也是不能查出整条记录的,为什么百度上都可以,百思不得解!

    从网上找个例子:

    根据USER_ID分组,每个获取 last_updated_date最新的一条记录。

    SELECT ID,USER_ID,problems,last_updated_date  FROM  (select * from t_iov_help_feedback  order by USER_ID, LAST_UPDATED_DATE DESC) b GROUP BY b.USER_ID; 

    很明显,这样在我的sql里面会报错。

    所以我用了关联查询 on后跟了两个条件

    select * from (select USER_ID,MAX(last_updated_date) group by USER_ID) as temp left join t_iov_help_feedback  as t on temp.USER_ID=t.USER_ID and temp.last_updated_date=t.last_updated_date;

    这样就能查出来了。先写这么多,以后有时间了再仔细研究论证。

  • 相关阅读:
    OC-KVO简介
    注册审核
    应用权限
    关于函数执行的一点知识
    设置权限
    文件操作实例:文件管理器(网页版)
    文件操作
    正则表达式
    全局变量和递归
    案例:简单留言板
  • 原文地址:https://www.cnblogs.com/zhqBlog/p/8383997.html
Copyright © 2011-2022 走看看