这个问题在这里已经有答案了:
sql仅选择列上具有最大值的行[重复](27个答案)
两年前关门了。
我有一个表,其中包含两个不同类别的每日条目。例子:
Date | CategoryID | Value
-----------------------------------
2016/02/01 1 1
2016/02/02 1 0
2016/02/03 1 2
2016/02/01 2 1
2016/02/02 2 1
2016/02/03 2 0
.
.
.
2017/02/01 1 0
2017/02/02 1 3
2017/02/03 1 1
2017/02/01 2 2
2017/02/02 2 1
2017/02/03 2 0
我要做的是遍历表格,为每个类别匹配每年的日期(例如02/01),然后得到历年的最大值。
因此,结果应该类似于类别1:
02/01 1 1
02/02 1 3
02/03 1 2
02/01 2 2
02/02 2 1
02/03 2 0
我只是不是100%确定正确的方法来有效地做到这一点,特别是如果这个表变得相当大。今后还会增加其他类别。
1条答案
按热度按时间njthzxwz1#
使用date\u format()、group by和max aggregation尝试以下操作