sql - 获取最新测量值
问题描述
我有一张桌子,上面有一些测量值、ID 和日期。
桌子是这样建造的
ID DATE M1 M2
1 2020 1 NULL
1 2020 NULL 15
1 2018 2 NULL
2 2019 1 NULL
2 2019 NULL 1
我想最终得到一个表格,其中每个 ID 有一行,最近的测量值
ID M1 M2
1 1 15
2 1 1
有任何想法吗?
解决方案
您可以将相关子查询与聚合一起使用:
select id, max(m1), max(m2)
from t
where t.date = (select max(t1.date) from t t1 where t1.id = t.id)
group by id;
推荐阅读
- python - 在 pandas 数据框中从过去一周的数据(之前的 168 个索引)中填充零
- javascript - 如何检测以 javascript 结束的窗口滚动?
- sql - -SQL - 获取当前日期和年份的日期
- reactjs - ReactJs 覆盖字体 awesone 图标
- python - 如何将文件夹中的多个 CSV 文件合并到 Azure 上的单个文件?
- delphi - 如何从帮助类函数中获取“帮助”类?
- laravel - Laravel 作业,缺少参数
- amazon-web-services - 在一天中的特定时间横向扩展 RDS Aurora 只读副本
- sql - 如何在任何列中的值匹配的情况下执行 SQL 内连接?
- flutter - 如何启用控制流集合实验