1条回答
默认
最新
回答交流
提交
问题信息
请登录之后查看
邀请回答
暂无人订阅该标签,敬请期待~~
墨值悬赏
匿名用户
oracle不熟,我用mysql解。 oracle应该差不多。
with cte1 as
(
select 1 as c1,1 as c2,2 as c3 union all
select 2,1,1 union all
select 3,1,1 union all
select 1,2,1
)
,cte2 as
(
select row_number() over(order by c1) as rowno,c1,c2,c3 from cte1
)
,cte3 as
(
select c1,max(rowno) as maxrowno from cte2 group by c1
)
select a.c1,a.c2,a.c3 from cte2 a
inner join cte3 b on a.c1 = b.c1 and a.rowno = b.maxrowno
C1 C2 C3
1 2 1
2 1 1
3 1 1
评论
有用 1
墨值悬赏