有a, b, c三列:a b c
1 1 1
1 2 2
1 1 3
我想得到1 1 3
也就是说,按照c
最大(max(c)
),同时a
唯一(unique(a)
)
如果只是c
最大(max(c)
),可以select a, b, max(c) from sometable group by a, b
但那样会让<a, b>
唯一,我只想让a
唯一
有a, b, c三列:a b c
1 1 1
1 2 2
1 1 3
我想得到1 1 3
也就是说,按照c
最大(max(c)
),同时a
唯一(unique(a)
)
如果只是c
最大(max(c)
),可以select a, b, max(c) from sometable group by a, b
但那样会让<a, b>
唯一,我只想让a
唯一
Select Tt.a, Tt.b, Tt.c
From Temp_Test Tt
Right Join (Select a, Max(c) Mx_c From Temp_Test Group By a) Tt1
On Tt.a = Tt1.a
And Tt.c = Tt1.Mx_c
不知道这个是不是你想要的,
1 回答2.4k 阅读✓ 已解决
1 回答2.3k 阅读✓ 已解决
1.4k 阅读
试了试Oracle的
Row_Number()
:select * from ( select a, b, c, Row_Number() Over (Partition BY a Order By c DESC) rn from sometable ) where rn = 1;