create or replace package body pro_test isprocedure Alarm_ContentsByTime(

p_StartTime varchar2,----开始时间

p_EndTime varchar2,----结束时间

io_cursorinOUT out_cursor

)iscursor cursor_1 IS--获取 列用于循环。select DISTINCT t.ps_productorcode code, t.PS_PRODUCTORNAME name,1type FROM PSINFO_PRODUCTYIELD_SB t

union allselect DISTINCT f.ps_rawcode code,f.ps_rawname name,2 type fromPSINFO_RAWMATERIALS_SB f

ORDER BY type,code;

V_SQL VARCHAR2(6000);

begin

V_SQL := ‘select‘‘市本级‘‘as c0003_stname, 1 as c0003_stcode‘;

FOR V_XCLCK IN cursor_1

LOOP

V_SQL := V_SQL || ‘,‘ || ‘min(case when t1.ps_name=‘‘‘ || V_XCLCK.name ||

‘‘‘then t1.ps_name end) as‘ || V_XCLCK.name||‘mc‘|| ‘,‘ || ‘min(case when t1.ps_name=‘‘‘ || V_XCLCK.name ||

‘‘‘then t1.cl end) as‘ || V_XCLCK.name||‘cl‘|| ‘,‘ || ‘min(case when t1.ps_name=‘‘‘ || V_XCLCK.name ||

‘‘‘then t1.ps_unit end) as‘ || V_XCLCK.name||‘dw‘;END LOOP;

V_SQL := V_SQL || ‘from t0003_station t

inner join (selectc.c0003_stcode,

c.c0003_stname,

a.ps_productorname ps_name,

a.ps_unit,

sum(nvl(a.ps_productoryield,0)) clfromt0003_station c,PSINFO_PRODUCTYIELD_SB awhere a.c0003_stcode=c.c0003_stcode

and a.ps_month>=to_date(‘‘‘||p_StartTime||‘‘‘,‘‘yyyy-mm-dd hh24:mi:ss‘‘)

and a.ps_month<=to_date(‘‘‘||p_EndTime||‘‘‘,‘‘yyyy-mm-dd hh24:mi:ss‘‘)

group by c.c0003_stcode,c.c0003_stname,a.ps_productorname,a.ps_unit

union allselectc.c0003_stcode,

c.c0003_stname,

b.ps_rawname ps_name,

b.ps_unit,

sum(nvl(b.ps_productoryield,0)) clfromt0003_station c,PSINFO_RAWMATERIALS_SB bwhere b.c0003_stcode=c.c0003_stcode

and b.ps_month>=to_date(‘‘‘||p_StartTime||‘‘‘,‘‘yyyy-mm-dd hh24:mi:ss‘‘)

and b.ps_month<=to_date(‘‘‘||p_EndTime||‘‘‘,‘‘yyyy-mm-dd hh24:mi:ss‘‘)

group by c.c0003_stcode,c.c0003_stname,b.ps_rawname,b.ps_unit

) t1 on t.c0003_stcode=t1.c0003_stcode

left join t0070_enterprise t70 on

t.c0003_stcode=t70.c0003_stcode

and t70.c0003_year=t1.c0003_stcode

and t70.c0070_stcode_ctrl=‘‘320100‘‘group by t.c0003_stname,t.c0003_stcode‘;

DBMS_OUTPUT.PUT_LINE(V_SQL);--V_SQL := ‘CREATE OR REPLACE VIEW RESULT AS‘||V_SQL;

open io_cursorforV_SQL;

end Alarm_ContentsByTime;

end pro_test;

oracle存储过程行转列,oracle 存储过程-动态行转列,解决。相关推荐

  1. mysql中将列动态转换为行,mysql 行转列 MySQL数据库动态行转列

    想把mysql一个表的行转成列,图1是原表,想实现图2的样式SELECT MAX(CAS就是一个动态的行列转换 CREATE TABLE `c_wssb_zz` ( `aa011` varchar(1 ...

  2. 不固定列动态行转列SQL

    行转列在sql的应用中比较常用,但现在互联网数据应用中,往往获取的都是json,而且里面的字段解析出来后列都是不固定的,多的话几百个字段都不出奇,经常我们要根据这些字段进行汇总,就涉及到了动态行转列的 ...

  3. 动态行转列:处理不确定数量的行转列操作

    目录 介绍 分析过程 数据样例 开始动手 添加辅助列 全连接换左连接 完成静态SQL 将动态部分设置到变量 改编为动态SQL 验证 总结 介绍 行转列操作是一种常见的数据转换技术,它可以将原始的行数据 ...

  4. oracle复制另一个字段,【学习笔记】Oracle存储过程 表中列不同时动态复制表中数据到另一个表中...

    天萃荷净 分享一篇关于Oracle存储过程实现表之间数据复制功能.两表中列不同,动态的将一表中的数据复制到另一个表中案例 因为要用到回收站功能,删除一条记录,要先放到一个delete表中,以便以后恢复 ...

  5. oracle 动态行转成列,Oracle 行转列 动态出转换的列

    一.运行环境 Win10,Oracle Database 11g r2,plsql 12. 二.效果预览 1.固定转换列的方法 2.存储过程处理 1)调用存储过程 2)查指定的视图即可 3.两种方法的 ...

  6. oracle存储过程rowcount用法,Oracle带输入、输出参数的存储过程回来受影响的行数SQL%ROWCOUNT...

    当前位置:我的异常网» SQL » Oracle带输入.输出参数的存储过程回来受影响的行数 Oracle带输入.输出参数的存储过程回来受影响的行数SQL%ROWCOUNT www.myexceptio ...

  7. oracle 动态sql列转行_oracle行转列(动态行转不定列)

    ---------------------------------------------------------------行转列的存储过程 CREATE OR REPLACE PROCEDURE ...

  8. oracle不定列,oracle行转列(动态行转不定列)

    2019独角兽企业重金招聘Python工程师标准>>> --------------------------------------------------------------- ...

  9. Oracle pivot函数动态行转列方法

    起因 工作中遇到个问题,需要支持动态行转列,方便报表展示. 起初这样写:

  10. Oracle在Pl/sql中的存储过程----zhoudianzhang

    Oracle 存储过程 目录 Oracle 存储过程... 1 Oracle存储过程基础知识... 1 Oracle存储过程的基本语法... 2 关于Oracle存储过程的若干问题备忘... 4 1. ...

最新文章

  1. MySQL报错解决方案:2013-Lost connection to MySQL server
  2. mysql 求count和_MySQL的统计总数count(*)与count(id)或count(字段)的之间的各自效率性能对比...
  3. Spring Boot-使用Spring Initializer快速创建Spring Boot项目
  4. leetcode - Balanced Binary Tree
  5. jmeter里的连接数_Jmeter之连接问题
  6. 终于要跟大家见面了,Flink 面试指南
  7. 正则只能出现特定字符_python正则表达式的简单使用总结
  8. vimnbsp;自动识别UTF8和GB2312
  9. Latex排版:CTeX winEdit 输出“系统找不到指定的文件”的解决办法)
  10. 概率论与数理统计【一】- 随机事件与概率(1):古典概型与几何概型
  11. ASP.NET MVC 3和Razor中的@helper 语法
  12. rar、zip优缺点
  13. 软件公司使用XPlanner进行敏捷项目计划和进度跟踪管理
  14. HTML和CSS小知识点笔记
  15. 华为认证: 高级redhat例题及答案
  16. 网络和http协议理论
  17. 牛客网直通BAT面试算法精讲课优惠码
  18. 【NO ST-LINK Detected】解决办法
  19. android系统优化启动时间(Google官方推荐)
  20. 恢复出厂设置 LED灯闪烁

热门文章

  1. 单元测试原来是这样的呼
  2. codeforce 606A - Magic Spheres
  3. 信息系统项目管理系列之九:项目质量管理
  4. ASP.NET MVC + ADO.NET EF 项目实战(二):设计过程与设计工具
  5. Nsis 使用1-- 依条件显示自定义页面 custom page on condition
  6. Delphi手动创建数据集
  7. 什么是word2vector
  8. 第八课 RNN条件生成与Attention机制
  9. [剑指offer]面试题第[53-2]题[JAVA][0-n-1中缺失的数字][二分法][暴力法]
  10. php对话框制作,织梦系统“提示窗口对话框类”详解,oxwindow.class.php、catalog_do.php...