我写的sql如下:select sum(c) from a where a.code between '1000' to '2000'
union all
select sum(c) from a where a.code between '2000'to '30000'
union all
select sum(c) from a where a.code between '3000'to '40000',这样结果是一列多行的,如何转成一行多列的格式,类似于excel里的转置功能,哪位高手支招,不胜感激!
union all
select sum(c) from a where a.code between '2000'to '30000'
union all
select sum(c) from a where a.code between '3000'to '40000',这样结果是一列多行的,如何转成一行多列的格式,类似于excel里的转置功能,哪位高手支招,不胜感激!
(case a.code when between '2000'to '30000' then sum(c)),
(case a.code when between '3000'to '40000' then sum(c))
from a;
sum(case a.code when between '2000'to '30000' then c else 0 end),
sum(case a.code when between '3000'to '40000' then c else 0 end)
from a;
上面写错了,汗啊
以下提供一个:http://www.itpub.net/thread-1017026-1-1.html
如果想深入了解可以看下http://liangzihou.blog.163.com/blog/static/45979126200922423011627/
把1000,2000这样的数据作为传入参数
返回是一次出来的一个集合
如:
select function_test(1000,2000) num1,
function_test(2000,3000) num2,
function_test(3000,4000) num2,
from dual函数体可以直接是:
return (select sum(c) from a where a.code between v_num_1 to v_num2);