当前位置: 首页 > news >正文

oracle中使用临时表GLOBAL TEMPORARY TABLE

需要在存储过程中返回一个临时结果集,这个结果集又是多个语句通过循环查询出来的,这时候就想到了将结果插入到临时表中,然后返回临时表的数据的思路,于是有了以下操作:

1.创建临时表

-- Create table
create global temporary table T_PROJECT_AMOUNT_TEMP
(project_id       VARCHAR2(1000),con_amount_tax_s NUMBER
)
on commit preserve rows;
-- Add comments to the table 
comment on table T_PROJECT_AMOUNT_TEMPis '临时表';
-- Add comments to the columns 
comment on column T_PROJECT_AMOUNT_TEMP.project_idis '项目ID';
comment on column T_PROJECT_AMOUNT_TEMP.con_amount_tax_sis '项目合同金额';

2.创建存储过程

CREATE OR REPLACE PROCEDURE PRC_XXXX(TODO_CUR OUT PKG_QUERY.CUR_QUERY
) ASBEGINdelete from T_PROJECT_AMOUNT_TEMP;--遍历数据for dataOjb in (select * from  xxx t where xxx) loop--往临时表插入记录insert into T_PROJECT_AMOUNT_TEMPselect xx,xx  from XXX;insert into T_PROJECT_AMOUNT_TEMPselect xx,xx  from XXX;END LOOP;--将临时表中的记录返回open TODO_CUR forselect * from T_PROJECT_AMOUNT_TEMP k;END PRC_XXXX;

在存储过程中先将临时表清空,然后再往临时表插入记录,不然数据会重复插入。

http://www.lryc.cn/news/379602.html

相关文章:

  • Gradio入门—快速开始
  • AOP应用之系统操作日志
  • 海外云手机自动化管理,高效省力解决方案
  • 后仿真中的 《specify/endspecify block》之(5)使用specify进行时序仿真
  • win10/11磁盘管理
  • 【昇思初学入门】第四天打卡
  • 禁用/屏蔽 Chrome 默认快捷键
  • 移动端+PC端应用模式的智慧城管综合执法办案平台源码,案件在线办理、当事人信用管理、文书电子送达、沿街店铺分析
  • AI音乐大模型时代:版权归属与创意产业的新生长点
  • C++函数作为参数
  • 考前刷题练手感(北航期末往年数据结构编程题)
  • Android记录9--实现转盘效果
  • 【Oracle APEX开发小技巧1】转换类型实现显示小数点前的 0 以 及常见类型转换
  • GRIT论文阅读笔记
  • 1980python个性化电影推荐管理系统mysql数据库Django结构layUI布局elasticsearch存储计算机软件工程网页
  • 基于IDEA的Maven(依赖介绍和引用)
  • pytest测试框架pytest-sugar插件生成进度条
  • 若依框架集成微信支付
  • IOS开发学习日记(十七)
  • 【ARMv8/ARMv9 硬件加速系列 2 -- ARM NEON 加速运算介绍】
  • LayoutSystem布局系统
  • 滚球游戏笔记
  • Mysql8死锁排查
  • 程序猿成长之路之数据挖掘篇——决策树分类算法(1)——信息熵和信息增益
  • 数据通信与网络(五)
  • 数据中心容灾考题
  • win10远程桌面连接端口,远Win10远程桌面连接端口修改及无法连接解决方案
  • 基于AT89C52单片机的温度报警系统
  • [保姆级教程]uniapp配置vueX
  • 第二次IAG