我有一个问题就是如何实现列转行是使用pivot吗试了好多次都没成功
也不知道是为啥
也没百度到正常文字:加里曼丹岛属热带雨林带。岛上大部分地区河流可通航,为贸易和商业活动的重要生命线,常常也是唯一命脉。北部岛形趋狭,河流通航里程很少超过160千米,常常比这更短,故该岛北部腹地在上世纪80世代以前曾长期处于封闭的原始社会状态。
也不知道是为啥
也没百度到正常文字:加里曼丹岛属热带雨林带。岛上大部分地区河流可通航,为贸易和商业活动的重要生命线,常常也是唯一命脉。北部岛形趋狭,河流通航里程很少超过160千米,常常比这更短,故该岛北部腹地在上世纪80世代以前曾长期处于封闭的原始社会状态。
正常文字:加里曼丹岛属热带雨林带。岛上大部分地区河流可通航,为贸易和商业活动的重要生命线,常常也是唯一命脉。北部岛形趋狭,河流通航里程很少超过160千米,常常比这更短,故该岛北部腹地在上世纪80世代以前曾长期处于封闭的原始社会状态。
解决方案 »
- 关于oracle只读表空间问题请教
- 关于oracle '' 的问题,求解惑
- 请教使用jdbc在西文字符集oracle中存取中文的乱码问题
- 用ORACLE触发器实现将服务器1上的表1一旦操作,同时更新服务器2上的表2,需要怎么样配置ORACLE
- Oracle是否支持级联更新?怎么实现?
- 请问OracleXMLSave类对要导入的XML文件格式有什么要求(实例说明最好)
- 我是新手,请大家帮忙!!!50分呀
- 一道SQL题 实在想不出该怎么写
- 带参数的动态行转不定列,求大神指导
- 求救。在管道函数内调用其它函数出错
- 做一个报表,如何在原有的报表中增加一个项目,并且原有的表不变
- centOS 7 安装oracle数据库命令行怎么装?
select * from (select name, nums from ( SELECT 1 id, '苹果' name, 1000
nums FROM DUAL UNION ALL
SELECT 2 id, '苹果' name, 2000
nums FROM DUAL UNION ALL
SELECT 3 id, '苹果' name, 4000
nums FROM DUAL UNION ALL
SELECT 4 id, '橘子' name, 5000
nums FROM DUAL UNION ALL
SELECT 5 id, '橘子' name, 3000
nums FROM DUAL UNION ALL
SELECT 6 id, '葡萄' name, 3500
nums FROM DUAL UNION ALL
SELECT 7 id, '芒果' name, 4200
nums FROM DUAL UNION ALL
SELECT 8 id, '芒果' name, 5500
nums FROM DUAL)) pivot (sum(nums) for name in ('苹果' 苹果, '橘子' 橘子, '葡萄' 葡萄, '芒果' 芒果));
或
SELECT T.A,LISTAGG(B,',') WITHIN GROUP (ORDER BY B DESC) FROM (
SELECT 1 A ,1 B FROM DUAL UNION ALL
SELECT 1 A ,2 B FROM DUAL UNION ALL
SELECT 2 A ,3 B FROM DUAL UNION ALL
SELECT 3 A ,4 B FROM DUAL UNION ALL
SELECT 3 A ,5 B FROM DUAL ) T
GROUP BY T.A ;列传行
select id , name, jidu, xiaoshou from ( SELECT 1 id,'苹果' name,1000 Q1,2000 Q2,3300 Q3,5000 Q4
FROM DUAL UNION ALL
SELECT 2 id,'橘子' name,3000 Q1,3000 Q2,3200 Q3,1500 Q4
FROM DUAL UNION ALL
SELECT 3 id,'香蕉' name,2500 Q1,3500 Q2,2200 Q3,2500 Q4
FROM DUAL UNION ALL
SELECT 4 id,'葡萄' name,1500 Q1,2500 Q2,1200 Q3,3500 Q4
FROM DUAL) unpivot (xiaoshou for jidu in (q1, q2, q3, q4) ) ;
行列转换大全,你想要的这里面都有说明。