【发布时间】:2020-10-03 16:52:57
【问题描述】:
有一个名为'**work**'的表包含如下所示的数据:
Id Name a_Column work_datetime
-----------------------------------------
1 A A_1 1592110166
2 A A_2 1592110166
3 A A_3 1592110164
4 B B_1 1582111665
5 B B_2 1592110166
6 C C_1 1592110166
如果我运行按A 和max(work_datetime) 分组的查询,那么Name='A' 的组可能有2 个选择,但我只需要其中一个带有a_Column='A_1',这样最终所需的输出如下:-
Id Name a_Column work_datetime
-----------------------------------------
1 A A_1 1592110166
5 B B_2 1592110166
6 C C_1 1592110166
在 group by 处理重复记录是 mysql 似乎不支持的东西!
有什么方法可以达到要求的结果?
【问题讨论】:
-
如何决定要显示
a_column的哪个值? -
你用的是什么版本的 MySQL?
-
@nick:例如,我正在使用基于表中最早 Id 的 a_column 我正在使用 MySQL 5.7
标签: mysql sql select group-by greatest-n-per-group