通过sql实现动态行转列
发表于:2026-11-03 作者:千家信息网编辑
千家信息网最后更新 2026年11月03日,上一章我们讲了固定行转列,本章我们就将一下怎么动态实现行转列的。因为有时候需要行专列的值有成千上万条,不可能再用固定行转列的方法,否则你一定会崩溃掉的。好了,废话不多说,开始吧!常见一张表tmp_te
千家信息网最后更新 2026年11月03日通过sql实现动态行转列
上一章我们讲了固定行转列,本章我们就将一下怎么动态实现行转列的。因为有时候需要行专列的值有成千上万条,不可能再用固定行转列的方法,否则你一定会崩溃掉的。好了,废话不多说,开始吧!
常见一张表tmp_test,内容如下:
实现代码:
create or replace procedure p_test is
v_sql varchar2(2000);
cursor cursor_1 is
select distinct subject from tmp_test order by subject;
begin
v_sql := 'select username';
for v_subject in cursor_1 loop
v_sql := v_sql || ',' ||'sum(decode(subject,''' ||v_subject.subject ||''',source)) as ' ||v_subject.subject;
dbms_output.put_line(v_sql);
end loop;
v_sql := vql || ' from tmp_test group by username';
dbms_output.put_line(v_sql);
v_sql := 'create or replace view test_result as ' || v_sql;
execute immediate v_sql;
end;
存储过程已经写好了,开始调用存过:
begin
p_test;
end;
查询视图test_result:
代码实现:
select * from test_result;
数据如下:
到这一步,动态行转列就已经实现了!希望对小伙伴有帮助!
动态
代码
专列
内容
小伙
常见
废话
数据
方法
有时候
视图
过程
上一
成千
存储
帮助
查询
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
互联网科技网
科技金融是不是互联网金融
互联网品科技
金融科技创新监管互联网金融
智网互联网科技
为想互联网科技
互联网科技媒体
善班互联网科技有限公司
镁科技互联网资讯平台
湖南洣水互联网科技有限公司扣款
安控科技rtu产品工业互联网
互联网实体化科技化
重庆威客帮互联网科技
重庆互联网医院沙龙医盟信息科技
广州市恰铎互联网科技有限公司
滨湖区互联网智能科技产品有哪些
工业互联网科技成果转化
广州三三互联网科技有限公司
互联网科技创新创业项目
六子台科技互联网展会
互联网金融监管科技数据
盈实互联网科技
广西互联网科技公司
互联网科技博客
天津腾达互联网科技有限公司
国大互联网教育科技有限公司薪资
广东工业互联网大赛深圳学泰科技
互联网科技股为什么大涨
新氧科技和美国互联网有关系吗
华人运通互联网科技公司