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个逻辑

相关推荐
♡喜欢做梦1 小时前
【MySQL】深入浅出事务:保证数据一致性的核心武器
数据库·mysql
遇见你的雩风1 小时前
MySQL的认识与基本操作
数据库·mysql
dblens 数据库管理和开发工具1 小时前
MySQL新增字段DDL:锁表全解析、避坑指南与实战案例
数据库·mysql·dblens·dblens mysql·数据库连接管理
weixin_419658311 小时前
MySQL的基础操作
数据库·mysql
不辉放弃2 小时前
ZooKeeper 是什么?
数据库·大数据开发
Goona_3 小时前
拒绝SQL恐惧:用Python+pyqt打造任意Excel数据库查询系统
数据库·python·sql·excel·pyqt
程序员编程指南3 小时前
Qt 数据库连接池实现与管理
c语言·数据库·c++·qt·oracle
幼儿园老大*5 小时前
数据中心-时序数据库InfluxDB
数据库·时序数据库
daixin88485 小时前
Redis过期数据的删除策略是什么?有哪些?
数据库·redis·缓存
陪我一起学编程6 小时前
MySQL创建普通用户并为其分配相关权限的操作步骤
开发语言·数据库·后端·mysql·oracle