比如有两张表结构如下:
KHH ZXYZ YZPF(得分)
001 123 2
002 111 3
003 112 1
004 113 2
... ... ... ... ....另一张表:
ID ZBMC
123 年龄
111 文化程度
112 投资偏好
113 平仓情况现在想实现一个存储过程的报表统计,没有选择某个字段则效果如下:
得分 年龄 文化程度 投资偏好 ...
0 2 0 0 ...
1 3 0 0 ...
2 0 1 0 ...
3 0 0 2 ...
如果只选择年龄其它的字段不会出现,效果如下:
得分 年龄
0 2
1 3
2 0
3 0
KHH ZXYZ YZPF(得分)
001 123 2
002 111 3
003 112 1
004 113 2
... ... ... ... ....另一张表:
ID ZBMC
123 年龄
111 文化程度
112 投资偏好
113 平仓情况现在想实现一个存储过程的报表统计,没有选择某个字段则效果如下:
得分 年龄 文化程度 投资偏好 ...
0 2 0 0 ...
1 3 0 0 ...
2 0 1 0 ...
3 0 0 2 ...
如果只选择年龄其它的字段不会出现,效果如下:
得分 年龄
0 2
1 3
2 0
3 0
select * from ..
else
select 选择值 from ..
create table t1(khh varchar2(16),id int,yzpf int);
insert into t1 values ('001',123,2);
insert into t1 values ('002',111,3);
insert into t1 values ('003',112,1);
insert into t1 values ('004',113,2);
create table t2(id int,zbmc varchar2(16));
insert into t2 values(123,'年龄');
insert into t2 values(111,'文化程度');
insert into t2 values(112,'投资偏好');
insert into t2 values(113,'平仓情况');declare
--下面的变量都可以作为参数传入PL中
--总字符串
v_str varchar2(40):='年龄,文化程度';
--需要分割的数量
v_str_num int :=2;
--各个子串的长度
length_str1 int :=2;
length_str2 int :=4;
begin
--用substr分割
--分割后的子串拼入下面的建表语句,建内存表也可以,并发比较好。
execute immediate 'create table temp1()';
end;
ss = tempString.split(" ");
// System.out.println(ss[0]);
// System.out.println(ss[1]);
// System.out.println(ss[2]);
// System.out.println(ss[3]);