oracle使用wm_concat后,对结果排序问题
表studentidnameage10aaa103bbb115ccc12现想将所有id取出,并排序,结果放到一个字符串中。selectwmsys.wm_concat(id...
表student
id name age
10 aaa 10
3 bbb 11
5 ccc 12
现想将所有id取出,并排序,结果放到一个字符串中。
select wmsys.wm_concat(id)
from student
order by to_number(id);
期望得到: 3,5,10,结果得到10,3,5
网上查了下,貌似要用over,但是用over后
select wmsys.wm_concat(id)
from student
over( order by id)
得到:
3
3, 5
3, 5, 10
我要把最后一行取出来吗?取的话怎么取?还是有什么别的好方法? 展开
id name age
10 aaa 10
3 bbb 11
5 ccc 12
现想将所有id取出,并排序,结果放到一个字符串中。
select wmsys.wm_concat(id)
from student
order by to_number(id);
期望得到: 3,5,10,结果得到10,3,5
网上查了下,貌似要用over,但是用over后
select wmsys.wm_concat(id)
from student
over( order by id)
得到:
3
3, 5
3, 5, 10
我要把最后一行取出来吗?取的话怎么取?还是有什么别的好方法? 展开
3个回答
展开全部
select str from (
select wm_concat(t.id) over( order by t.id) str,row_number() over( order by t.id desc) rn from student t) a where a.rn=1
select wm_concat(t.id) over( order by t.id) str,row_number() over( order by t.id desc) rn from student t) a where a.rn=1
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
DENSE_RANK() over(PARTITION BY id order by id),age
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询