使用SQLLOADER將每行資料根據條件插入不同表
SQL*LOADER支援將每行資料資料(物理行)根據條件插入不同表,本文進行測試驗證。
1,測試:
1.0測試表
create table multi_line(
x1 varchar2(100),x2 varchar2(100),x3 varchar2(100));
create table multi_line2(
x1 varchar2(100),x2 varchar2(100),x3 varchar2(100));
2.1測試
test1:
cat normal_line.ctl
LOAD DATA
INFILE *
INTO TABLE multi_line TRUNCATE
when recid = '1'
fields terminated by ',' optionally enclosed by '"'
trailing nullcols
( recid filler,
x1,
x2,
x3
)
INTO TABLE multi_line2 TRUNCATE
when recid = '2'
fields terminated by ',' optionally enclosed by '"'
trailing nullcols
( recid filler,
x1,
x2,
x3
)
BEGINDATA
1,a1,b1,c1
2,a2,b2,c2
1,a3,b3,c3
2,a4,b4,c4
1,a5,b5,c5
set linesize 100
set pagesize 0
col x1 for a10
col x2 for a10
col x3 for a10
SQL> select * from multi_line;
a1 b1 c1
a3 b3 c3
a5 b5 c5
SQL> select * from multi_line2;
no rows selected
-->no data inserted!
test2:
增加 position(1),設定條件起點為行首:
cat normal_line.ctl
LOAD DATA
INFILE *
INTO TABLE multi_line TRUNCATE
when recid = '1'
fields terminated by ',' optionally enclosed by '"'
trailing nullcols
( recid filler,
x1,
x2,
x3
)
INTO TABLE multi_line2 TRUNCATE
when recid = '2'
fields terminated by ',' optionally enclosed by '"'
trailing nullcols
( recid filler position(1),
x1,
x2,
x3
)
BEGINDATA
1,a1,b1,c1
2,a2,b2,c2
1,a3,b3,c3
2,a4,b4,c4
1,a5,b5,c5
set linesize 100
set pagesize 0
col x1 for a10
col x2 for a10
col x3 for a10
SQL> select * from multi_line;
a1 b1 c1
a3 b3 c3
a5 b5 c5
SQL> select * from multi_line2;
a2 b2 c2
a4 b4 c4
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/18922393/viewspace-743755/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 根據條件動態更新不同表的資料
- 根據查詢條件批量修改表資料
- sqlserver根據條件去除重複資料SQLServer
- [Q]怎麼實現一條記錄根據條件多表插入 zt
- excel將一個工作表根據條件拆分成多個工作簿Excel
- Vue根據條件新增click事件Vue事件
- 如何在列表,字典,集合中根據條件篩選資料
- mysql根據查詢結果批量更新多條資料(插入或更新)MySql
- FLEX4實踐—DatagridColumn根據條件顯示不同顏色Flex
- [程式碼結構設計]根據不同條件使用不同實現類的業務程式碼設計
- Storm框架:如何根據業務條件選擇不同的bolt進行下發訊息ORM框架
- 直播系統原始碼,vue二種方式根據條件判斷顯示不同樣式原始碼Vue
- 如何插入關聯表資料,或插入資料的時候執行,根據某欄位執行一個函式函式
- 使用Log4Net根據log level的不同將log輸出到不同的檔案中
- Gridview繫結資料庫的欄位,根據條件欄位顏色改變View資料庫
- PHP根據資料表自動生成CURD操作PHP
- 根據某個查詢條件的前50條資料來決定UPDATE語句的更新範圍
- django根據不同git分支載入不同配置DjangoGit
- C# Report根據條件設定顯示顏色C#
- 【SQL】根據兩列資訊,整合兩張表資料SQL
- mysql like查詢 - 根據多個條件的模糊匹配查詢MySql
- MyBatis 根據資料表反向生成 java 實體類等MyBatisJava
- Django查詢特定條件的資料並插入其他表格模型Django模型
- 使用awk查詢不滿足sqlloader載入條件的記錄SQL
- Pandas根據篩選條件對指定excel列進行篩選!神器!Excel
- goldegate根據實際要求進行對映到多個不同表Go
- 根據不同的顯示器解析度使用不同樣式檔案
- SqlServer中根據某幾列獲取重複的資料將其刪除並保留最新一條SQLServer
- Oracle根據表名查詢表空間及資料檔案的地址Oracle
- 【INSERT】在INSERT插入語句中引入條件限制選項實現資料插入控制
- hive將查詢資料插入表中某欄位無資料Hive
- vue-cli 根據不同的環境打包Vue
- 根據表查詢索引資訊索引
- 根據父表查詢子表
- Delphi 根據資料庫表生成Record型別,並封裝CRUD資料庫型別封裝
- es java 聚合方法——聚合後根據count排序並取前2條資料Java排序
- sql server 2000 一個表的資料插入到三個相關聯表中,一條一條的插入SQLServer
- 使用 FOR ALL ENTRIES 將 ABAP 內表內容作為資料庫表的讀取條件之一試讀版資料庫