Oracle临时表应用

1.参考

oracle两种临时表的创建及使用方法_oracle 临时表-CSDN博客

【SQL】全局临时表 GLOBAL TEMPORARY TABLE-CSDN博客

2.语句

CREATE GLOBAL TEMPORARY TABLE tablename (columns) ON COMMIT PRESERVE \| DELETE ROWS

3.应用

sql 复制代码
CREATE GLOBAL TEMPORARY TABLE "SEC_BASE" 
   (	
    "C_SEC_CODE" VARCHAR2(100) DEFAULT ' ' NOT NULL ENABLE, 
	"C_SEC_NAME" VARCHAR2(200) DEFAULT ' ' NOT NULL ENABLE, 
	"C_SEC_MKT_CODE" VARCHAR2(30) DEFAULT ' ' NOT NULL ENABLE, 
	"C_SEC_ISIN_CODE" VARCHAR2(40), 
	"C_MKT_CODE" VARCHAR2(40) DEFAULT ' ' NOT NULL ENABLE, 
	"C_SEC_VAR_CODE" VARCHAR2(40) DEFAULT ' ' NOT NULL ENABLE, 
	"C_DC_CODE" VARCHAR2(40) DEFAULT ' ' NOT NULL ENABLE, 
	"N_PRICE_FCR" NUMBER(18,4) DEFAULT 1 NOT NULL ENABLE, 
	"C_SEC_CODE_TRG" VARCHAR2(100), 
	"N_AMOUNT_HD" NUMBER(18,4) DEFAULT 1 NOT NULL ENABLE, 
	"N_FV_ISSUE" NUMBER(30,15) DEFAULT 1 NOT NULL ENABLE, 
	"D_TO_LIST" DATE DEFAULT TO_TIMESTAMP('1900-01-01','YYYY/MM/DD') NOT NULL ENABLE, 
	"D_OFF_LIST" DATE DEFAULT TO_TIMESTAMP('1900-01-01','YYYY/MM/DD') NOT NULL ENABLE, 
	"N_BLXS" NUMBER(15,8), 
	"C_JCJG" VARCHAR2(120), 
	"N_UPPER_LIMIT" NUMBER(15,8), 
	"N_LOWER_LIMIT" NUMBER(15,8), 
	"C_INTERVAL_TIME" VARCHAR2(4000), 
	"C_INTERVAL_DAY" VARCHAR2(20), 
	"C_SETT_ORG" VARCHAR2(100), 
	"N_XSFWFL" NUMBER(18,8), 
	"C_TGR_CODE" VARCHAR2(50), 
	"C_TGR_NAME" VARCHAR2(50), 
	"D_TO_LIST_ZQ" DATE DEFAULT TO_TIMESTAMP('1900-01-01','YYYY/MM/DD'), 
	"C_FXJG_CODE" VARCHAR2(20) DEFAULT ' ', 
	"C_MAIN_PROP" VARCHAR2(20) DEFAULT ' ', 
	"C_GUAR_TYPE" VARCHAR2(20), 
	"C_FINA_COMM" VARCHAR2(20), 
	"C_SFJF" VARCHAR2(20), 
	"D_SQAI_BEGIN" DATE, 
	"C_BASE_DATE_TYPE" VARCHAR2(50), 
	"N_BASE_DATE" NUMBER(3,0), 
	"C_DUE_DATE_TYPE" VARCHAR2(50), 
	"N_DUE_DATE" NUMBER(3,0), 
	"C_FINANCE_TOOL" VARCHAR2(30) DEFAULT ' ', 
	"C_KZCD_GQ" VARCHAR2(20), 
	"C_SEC_NAME_CN" VARCHAR2(20), 
	"C_EXT_ASS_CODE" VARCHAR2(20), 
	"C_GLF" VARCHAR2(50), 
	"C_ORG_TYPE" VARCHAR2(20), 
	"C_ISSUERS_CODE" VARCHAR2(50) DEFAULT ' ' NOT NULL ENABLE, 
	"D_CHANGE_LIST" DATE DEFAULT to_timestamp('9998-12-31','YYYY/MM/DD'), 
	"C_DESC" VARCHAR2(300)
   ) ON COMMIT DELETE ROWS ;

CREATE INDEX "IDX_R_P_SV_SEC_BASE0" ON "R_P_SV_SEC_BASE" ("C_SEC_CODE") ;

1.先利用SEC_BASE处理第1个逻辑然后再commit, (commit之后临时表自动清空)

2.再处理后面的第2个逻辑

相关推荐
消失在人海中10 分钟前
Oracle的CURRENT REDO丢失,数据丢失风险分析
数据库·oracle
喵了几个咪32 分钟前
选择第三方IAM还是自建权限体系?中小型后台系统权限架构决策指南
数据库·oracle·架构
Elastic 中国社区官方博客1 小时前
Kibana:使用 AI Chat 及 MCP 轻松创建 AI 原生仪表板
大数据·数据库·人工智能·elasticsearch·搜索引擎·ai·信息可视化
杨云龙UP2 小时前
Oracle Health Check巡检脚本使用SOP V2.0:从HTML原始报告→生成Word专业巡检报告→交付客户_2026-06-03
linux·运维·数据库·sql·oracle·报告·巡检
Database_Cool_2 小时前
Hudi 湖仓一体架构:阿里云 AnalyticDB MySQL 原生集成最佳实践
数据库·mysql·阿里云
我是一颗柠檬3 小时前
【Redis】发布订阅与消息队列Day8(2026年)
数据库·redis·后端·缓存
sukioe3 小时前
Redis 持久化+高可用详解:RDB/AOF/混合/主从/哨兵/集群
数据库·redis·缓存
全栈软件开发3 小时前
祈福导航系统V1.1更新 优化后端控制逻辑和前台UI
数据库·祈福导航系统
_qingche4 小时前
H2 数据库到 MySQL 数据迁移
java·数据库·spring boot·mysql·spring·重构·kotlin
AOwhisky4 小时前
MySQL 学习笔记(第一期):数据库基础与 MySQL 初探
运维·数据库·笔记·学习·mysql·云计算