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

相关推荐
IT邦德9 分钟前
RPM包快速安装Oracle26ai
数据库·oracle
Dovis(誓平步青云)10 分钟前
《滑动窗口算法:从 “暴力遍历” 到 “线性高效” 的思维跃迁》
运维·服务器·数据库·算法
mr_LuoWei200923 分钟前
python工具:python代码知识库笔记
数据库·python
这周也會开心33 分钟前
Redis数据类型的底层实现和数据持久化
数据库·redis·缓存
ん贤34 分钟前
一次批量删除引发的死锁,最终我选择不加锁
数据库·安全·go·死锁
数据知道1 小时前
PostgreSQL 核心原理:系统内部的对象寻址机制(OID 对象标识符)
数据库·postgresql
倔强的石头_1 小时前
关系数据库替换用金仓:数据迁移过程中的完整性与一致性风险
数据库
Elastic 中国社区官方博客1 小时前
使用 Groq 与 Elasticsearch 进行智能查询
大数据·数据库·人工智能·elasticsearch·搜索引擎·ai·全文检索
穿过锁扣的风2 小时前
一文搞懂 SQL 五大分类:DQL/DML/DDL/DCL/TCL
数据库·microsoft·oracle
l1t2 小时前
DeepSeek总结的SNKV — 无查询处理器的 SQLite 键值存储
数据库·sqlite·kvstore