▲▲▲百分大求救,高手来讨论,菜鸟来学习,来者有分!▲▲▲
我要请教各位的一个关于行转列的问题是:
参考资料:(下面是网上一位高手提供的行转类的例子,if 你是高手 go to ★我的问题★)
表ttt有三个字段
seq --序列
jcxm --检查项目
zhi --值
数据分别如下:
seq jcxm zhi
------- -------- --------
11 1 0.50
11 2 0.21
11 3 0.25
12 1 0.24
12 2 0.30
12 3 0.22
实现功能
创建视图时移动行值为列值
create view v_view1
as
select seq,
sum(decode(jcxm,1, zhi)) 检测项目1,
sum(decode(jcxm,2, zhi)) 检测项目2,
sum(decode(jcxm,3, zhi)) 检测项目3
from ttt
group by seq;
序号 检测项目1 检测项目2 检测项目3
11 0.50 0.21 0.25
12 0.24 0.30 0.22
★★★★★★★★★★★★我的问题★★★★★★★★★★★★★★
对于
表
------------------------------------------------
col1 | col2 | col3 | type | value1 | value2
------------------------------------------------
a | b | c | 1 | 3 | 2
x | y | z | 2 | 7 | 5
a | b | c | 2 | 4 | 6
x | y | z | 1 | 8 | 9
主键为(col1 , col2 , col3 , type)
要求输出
------------------------------------------------
col1 | col2 | col3 | type1 | type2 | sumvalue2
------------------------------------------------
a | b | c | 3 | 4 | 8
x | y | z | 8 | 7 | 14
注:
例如
输出数据第一行中type1对应的值为记录 a,b,c,1 对应的值value1,sumvalue2为记录 a,b,c,1 对应的值value2与 a,b,c,2 对应的值value2的和
因为group by 不支持多个字段组合,所以本操作难度较大,我到是有个想法,但感觉不太好,所以想先听听大家的意见!