暂无图片
oracle中,一张三列的表,按c1列分组,随便一条c2,c3数据,但是c2,c3的必须是同一行数据,有没有解法?
我来答
分享
暂无图片 匿名用户
oracle中,一张三列的表,按c1列分组,随便一条c2,c3数据,但是c2,c3的必须是同一行数据,有没有解法?

233.jpg

我来答
添加附件
收藏
分享
问题补充
1条回答
默认
最新
chengang

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
暂无图片
回答交流
提交
问题信息
请登录之后查看
邀请回答
暂无人订阅该标签,敬请期待~~
暂无图片墨值悬赏