开发者社区 问答 正文

请教一个SQL语句

有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唯一

展开
收起
a123456678 2016-06-29 14:21:35 1612 分享 版权
1 条回答
写回答
取消 提交回答
  • 试了试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;

    2019-07-17 19:49:07
    赞同 展开评论
问答分类:
问答标签:
问答地址: