求教

Aranyakah 2011-05-04 08:18:20
oracle

plsql

使用存储过程

给出


得出


一手交答案一手交分,谢谢!
...全文
156 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
nihao20071 2011-05-05
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 gelyon 的回复:]

你的供应商是固定的还是不固定的?
行列转换而已,不管是否固定,参考通过方法:http://topic.csdn.net/u/20100109/13/6a10c168-f190-4766-b838-adbf03c4ac7b.html?93286
[/Quote]
支持
Aranyakah 2011-05-05
  • 打赏
  • 举报
回复
不好意思,白天比较忙,供应商是不定的,另外希望不要传入参进去,向构造函数一样,其实题目是别人给的,我不懂的,但是别人要拿答案去交差,我就来问问,我希望答案尽量向他要求的那样,2楼的链接我已经看过了,没看懂........不过试了一下,自认为基本能满足他的要求。

但是我希望答案如下:


不知道红框框的怎么加进去,如果有人愿意改一下我加他50分,没的话就此结贴给分。

谢谢大家支持

xiaoyaobihai 2011-05-05
  • 打赏
  • 举报
回复
供应商最多有几个啊?
304的的哥 2011-05-05
  • 打赏
  • 举报
回复

create or replace procedure row_to_col(tabname in varchar2,
group_col in varchar2,
column_col in varchar2,
value_col in varchar2,
Aggregate_func in varchar2 default 'max',
colorder in varchar2 default null,
roworder in varchar2 default null,
when_value_null in varchar2 default null,
viewname in varchar2 default 'v_tmp')
Authid Current_User
as
sqlstr varchar2(2000):='create or replace view '||viewname||' as select '||group_col||' ';
c1 sys_refcursor;
v1 varchar2(100);
begin
open c1 for
'select distinct '||column_col||' from '||tabname||case when colorder is not null then ' order by '||colorder end;
loop
fetch c1 into v1;
exit when c1%notfound;
sqlstr:=sqlstr||chr(10)||','||case when when_value_null is not null then 'nvl(' end||
Aggregate_func||'(decode(to_char('||column_col||'),'''||v1||''','||value_col||'))'||
case when when_value_null is not null then chr(44) ||when_value_null||chr(41) end||'"'||v1||'"';
end loop;
close c1;
sqlstr:=sqlstr||' from '||tabname||' group by '||group_col||case when roworder is not null then ' order by '||roworder end;
execute immediate sqlstr;
end row_to_col;
gelyon 2011-05-04
  • 打赏
  • 举报
回复
你的供应商是固定的还是不固定的?
行列转换而已,不管是否固定,参考通过方法:http://topic.csdn.net/u/20100109/13/6a10c168-f190-4766-b838-adbf03c4ac7b.html?93286
yinan9 2011-05-04
  • 打赏
  • 举报
回复
mark,有时间过来做

17,382

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 基础和管理
社区管理员
  • 基础和管理社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧