mysql 分组带出主键
来源:8-9 【实战】SQL改写优化

荔枝仔
2019-12-04
请教老师一个问题。A(主键) B(分组依据列) C(值列)三列 表ABC
select max© from abc group by b。
尝试过selelct a.* from abc a join (select b,max© mc from abc group by b) a1 on a.b=a1.b and a.c=a1.mc。但是因为分组后MAX©可能几个都是,导致结果不是预期。想问下老师有什么办法。非常感谢。
写回答
2回答
-
没有看明白,你最终想要的结果是什么?如果按B列分组那么每一个不同的B值都会有一个max值这是正常的。
032019-12-05 -
荔枝仔
提问者
2019-12-04
A B C
1 a 10
2 a 20
3 a 15
4 b 30
5 b 25
6 c 50
7 c 60
8 d 30
假如原数据这样,想要按照B列分组,得到MAX(C)所在行的A值。
上面数据想要的结果是
A B C
2 a 20
4 b 30
7 c 60
8 d 30
00
相似问题