oracle一列多行转一行多列表示,Oracle 多行转多列,列值转为列名

前段时间做调查问卷,客户创建自定义问卷内容,包括题目和选项内容;

之后需要导出问卷明细,,,,麻烦来咯

于是到网上到处搜索,没有直接结果;于是又找各种相似的,,终于功夫不负有心人

然后最终自己写出来了,decode才是核心

废话不多说,看图

需求示例图表:

c32a741eb3c56c8f2baed2f3f20fdb61.png

存储过程,嘿嘿:

create or replace procedure NAG_QUESTIONERSULT_EXP(

V_QID in number,

C_Title out sys_refcursor,

C_Data out sys_refcursor

)

as

/*

导出调查问卷资答案数据

Auth:lzpong 2015/09/01

*/

cursor dusers is --列信息

select qss.qss_id,nvl(qss.qss_title,substr(qs.qs_title,0,20)) QSS_TITLE from nag_questions qs,nag_questionss qss

where qss.qss_qs_id=qs.qs_id and qs.qs_q_id=V_QID

order by qs.qs_order,qss.qss_order;

strSql varchar2(10000);

begin

for ur in dusers loop

strS

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值