Oracle 行转列 动态出转换的列

本文介绍了在Oracle 11g环境下,如何实现行转列的两种方法:固定列转换和存储过程处理。详细讲解了存储过程的使用以及两者之间的关系,通过动态SQL创建视图来处理不确定的列数问题。
摘要由CSDN通过智能技术生成

一、运行环境          


Win10,Oracle Database 11g r2,plsql 12。

二、效果预览


1、固定转换列的方法


2、存储过程处理


1)调用存储过程

2)查指定的视图即可

3、两种方法的关系


其实原理很简单,就是通过动态sql,去把你不愿意写,或者说是不确定的转换列数,通过查询查出来,拼接进去,然后执行拼接后的sql,创建视图。

三、存储过程

create or replace procedure p_RowsToCols(as_sql       in varchar2 --源数据的查询sql
                                        ,as_sql_cols  in varchar2 --动态转换列的查询sql,要求转为列的那列,字段名必须为cols,支持排序
              
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值