ORACLE中 大量数据插入表 SQL
declare
g_commit_count number; cursor cu1 is
select gl_flexfields_pkg.get_description_sql(gcc.chart_of_accounts_id,
1, --1
gcc.segment1) company_name,
p_com_code company_code,
gl.name,
gl.description sob_desc,
ps.period_year,
ps.period_name,
to_char(jeh.default_effective_date, 'yyyy-mm-dd') creation_date,
to_char(jeh.posted_date, 'yyyy-mm-dd') posted_date,
jec.user_je_category_name,
jeh.doc_sequence_value,
jel.je_line_num,
decode(nvl(jel.accounted_dr, 0), 0, null, gcc.segment2) dr_acc,
decode(nvl(jel.accounted_cr, 0), 0, null, gcc.segment2) cr_acc,
jel.description,
jel.accounted_dr,
jel.accounted_cr,
jeh.attribute3,
null fa_num,
null po_num,
jeh.currency_code
from gl_je_headers jeh,
gl_je_lines jel,
gl_code_combinations gcc,
gl_je_sources_vl src,
gl_je_categories jec,
gl_period_statuses ps,
gl_ledgers gl
WHERE jeh.je_header_id = jel.je_header_id
AND jeh.je_source = src.je_source_name
AND jeh.je_category = jec.JE_CATEGORY_name
AND jel.code_combination_id = gcc.code_combination_id
AND jeh.ledger_id = gl.ledger_id
AND src.language = userenv('LANG')
AND jec.language = userenv('LANG')
AND jeh.actual_flag = 'A'
AND jeh.status = 'P'
AND ps.application_id = 101
AND jel.ledger_id = ps.ledger_id
AND ps.period_name = jeh.period_name
AND (nvl(jel.accounted_dr, 0) <> 0 OR
nvl(jel.accounted_cr, 0) <> 0)
AND jeh.ledger_id = p_sob_id
--and jeh.je_header_id=13704942--
AND ps.period_name between nvl(p_period_f, ps.period_name) and
nvl(p_period_t, to_char(sysdate, 'YYYY-MM'))
--AND (jeh.default_effective_date >=to_date(P_START_DATE,'yyyy-mm-dd hh24:mi:ss') or P_START_DATE is null)
-- AND (jeh.default_effective_date <=to_date(P_END_DATE,'yyyy-mm-dd hh24:mi:ss') or P_END_DATE is null)
;
--order by ps.period_name, jeh.je_header_id, jel.je_line_num; TYPE type_je_detail IS TABLE OF cux_glje_detail_tmp%ROWTYPE INDEX BY BINARY_INTEGER; t_je_detail type_je_detail ;
BEGIN
g_commit_count := 5000; OPEN cu1;
LOOP
FETCH cu1 BULK COLLECT
INTO t_je_detail LIMIT g_commit_count;
FORALL i IN 1 .. t_je_detail .count
INSERT /* +APPEND */
INTO cux_glje_detail_tmp
VALUES
(
t_je_detail (i).company_name
t_je_detail (i).company_code,
--中间省略
t_je_detail (i).币currency_code);
COMMIT;
EXIT WHEN cu1%NOTFOUND;
END LOOP;
CLOSE cu1;
ORACLE中 大量数据插入表 SQL的更多相关文章
- sql将一个表中的数据插入到另一个表中
sql将一个表中的数据插入到另一个表中 列名不一定要相同,只要你在HH中列出要插入列的列表跟select from mm表中的选择的列的列表一一对应就可以了,当然两边的数据类型应该是兼容的. ...
- sql语句 怎么从一张表中查询数据插入到另一张表中?
sql语句 怎么从一张表中查询数据插入到另一张表中? ----原文地址:http://www.phpfans.net/ask/MTc0MTQ4Mw.html 比如我有两张表 table1 字段 un ...
- Oracle中把一张表查询结果插入到另一张表中
1. 新增一个表,通过另一个表的结构和数据 create table XTHAME.tab1 as select * from DSKNOW.COMBDVERSION 2. 如果表存在: inse ...
- mysql结构相同的三张表查询一条记录\将一张表中的数据插入另外一张表
将一张表中的数据插入另外一张表 1.两张表结构相同 insert into 表1名称 select * from 表2名称 2.两张结构不相同的表 insert into 表1名称(列名1,列名2,列 ...
- oracle数据库之数据插入、修改和删除
作为一合格的测试人员对数据库的单表查询.多表查询.分组查询.子查询等等这些基本查询方法还是要会的.不然到企业中,容易被一些人鄙视,或者说如果数据库学不好,表查不明白,那么对自己能力来说也是一种侮辱,因 ...
- 如何恢复oracle中已删除的表
在9i中Oracle引入了flashback的概念,可以将数据返回到某个时间点,但对于诸如drop/truncate等DDL语句却尚不支持.进入Oracle10g,这一缺陷得到了弥补.可以将丢失掉的表 ...
- Hive扩展功能(三)--使用UDF函数将Hive中的数据插入MySQL中
软件环境: linux系统: CentOS6.7 Hadoop版本: 2.6.5 zookeeper版本: 3.4.8 主机配置: 一共m1, m2, m3这五部机, 每部主机的用户名都为centos ...
- 使用excel中的数据快速生成sql语句
在小公司的话,总是会有要开发去导入历史数据(数据从旧系统迁移到新系统上)的时候.这个时候,现场实施或客户会给你一份EXCEL文档,里面包含了一些别的系统上的历史数据,然后就让你导入到现在的系统上面去. ...
- oracle中的数据对象
oracle中的数据对象有表.视图.索引.序列等 表的相关操作 1.创建表 方式一: 方式二:create table person( create table person1 id number(1 ...
随机推荐
- bzoj5397 circular 随机化(
题目大意 给定一个环,环上有一些线段,试选出最多的线段 题解: 提醒:这可能是一篇非常欢乐的题解 我们考虑倍长环,然后断环为链 我们考虑枚举开头的线段,然后做一次贪心 这样子的复杂度根据实现的不同是\ ...
- python class属性
代码一: class A(object): pass a = A() a.name = "class_A" print(a.name) #class_A 代码二:class A(o ...
- Android系统API综述
下述能够找到Android开发源代码: 1. http://grepcode.com/project/repository.grepcode.com/java/ext/com.google.andro ...
- office图标(word,powerpoint,excel)异常(变成白板)问题修复
都是wps搞的鬼. 如果先装了wps后卸载wps再装office就可能出现这个问题. 终于解决了!!先装个wps 2016,进入设置→高级→兼职性关联.这时你会发现ppt文件图标不是白板了.重启打开w ...
- centos安装svn并创建版本库配置用户分组权限
1.设置aliyun安装源// 本步骤非必须, 使用aliyun安装源后, 执行yum update速度明显提升 wget -O /etc/yum.repos.d/CentOS-Base.repo h ...
- git 强制覆盖分支
假设要用develop覆盖master分支,如下操作 git checkout master git reset --hard develop //先将本地的master分支重置成develop gi ...
- C语言面试题分类->宏定义
1.写一个“标准”宏,这个宏输入两个参数并返回较小的一个 答:#define MIN(x, y) ((x)<(y)?(x):(y))//注意x,y要加括号,因为x,y如果有复合运算会出现问题. ...
- 移动端web开发常见问题
1.移动端如何定义字体font-family 三大手机系统的字体: ios 系统 默认中文字体是Heiti SC 默认英文字体是Helvetica 默认数字字体是HelveticaNeue 无微软雅黑 ...
- Design Principle, Design Patterns And Refactoring
https://refactoring.guru/smells/feature-envy https://stackoverflow.com/questions/1242994/effective-c ...
- lamdba表达式
lambda表达式是一个可传递的代码块,可以在以后执行一次或多次. lambda表达式的语法: 1. 参数 -> 表达式(无需指定返回类型) (String first, String seco ...