http://pan.baidu.com/share/link?shareid=385879&uk=185735930
我的原表是在上面链接的.sql中写着,前面有10列保留,后面的S1,S2,S3...Sn有一百多个字段,想通过存储过程把以S开头的列转成行,S列数据是零时,过滤(不要该行)。
我的原表是在上面链接的.sql中写着,前面有10列保留,后面的S1,S2,S3...Sn有一百多个字段,想通过存储过程把以S开头的列转成行,S列数据是零时,过滤(不要该行)。
解决方案 »
- 问protocol adapter error 如何解决
- 请教一个sql语句
- 急,数据库的配置问题 “未处理 System.Data.OracleClient.OracleException”
- 在库有几个表的数据无法读取,都返回空记录
- oracle9.2.0.1升级为9.2.07时无法出现"universal installer" 升级界面???
- 请教一个简单的SQL语句,解决马上结分。
- "ORA-03127: 在活动操作结束之前不允许进行新的操作"是什么意思?
- WIN2000下的oracle 9.2 server 安装后不能进行EXP,IMP,提示“协议适配器错误”!!!
- 如何移动数据文件、日志文件,请高手指教!
- 如何编程创建一个与某个数据表(oracle)相同结构的数据表且位于不同的数据库中?
- 关于查询的问题,请求大牛指教
- oracle数据类型以及约束
v_name varchar2(20);
v_cnt varchar2(2);
v_sql varchar2(1000);
begin
for c in (select COLUMN_NAME v_name from dba_tab_columns where TABLE_NAME='SALARY_BASE' and COLUMN_NAME like 'S%') loop
v_sql:='insert into SALARY_BASE_ROW
select year,month,dept,eid,ename, etype,paycount,payshould,paydeduct,paysum,'||''''||c.v_name||''''||','||c.v_name||'
from SALARY_BASE where '||c.v_name||' >0';
execute immediate v_sql;
commit;
end loop;
end;SQL> select count(*) from SALARY_BASE_ROW ; COUNT(*)
----------
46