行列转换实例
表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
附送一个ORACLE的FOR循环的例子:
declare
int_s number;
int_e number;
begin
select to_number(s),to_number(e) into int_s,int_e from table1;
for i in int_s .. int_e loop
int_s := int_s+1;
end loop;
end;