oracle一次插入多條資料

2021-10-09 01:22:53 字數 1007 閱讀 6487

insert

into 表名(欄位1

,欄位2

)select

'一',

'二'from dual

union

allselect

'三',

'四'from dual

union

allselect

'五',

'六'from dual

union

allselect

'七',

'八'from dual

union

allselect

'九',

'十'from dual

從乙個csv檔案中讀取所有的資料,並且插入到乙個oracle資料庫中,並且幾分鐘內完成,大約有60萬條。

現在給大家介紹乙個小技巧,話說在oracle裡有乙個很奇特的「表」,名叫dual。

首先, select 『1』 from dual ,結果返回1。

其次,

select

'1'from dual

union

select

'2'from dual

結果是

1

2

如果這樣,

insert

into 表名 (欄位1)

select

'1'from dual

union

select

'2'from dual

這一次就插入了兩條資料。當然,如果全欄位插入 那個(欄位1)還可以省略掉。

最後的實踐證明,如果迴圈60萬次insert,乙個小時也執行不完(當然有可能是機器太爛),而拼成1000條select再插入一次,插入60萬條的時間是20分鐘,而拼成5000條select再insert一次,插入60萬條資料的時間是12分鐘。

oracle一次插入多條資料

insert into 表名 欄位1,欄位2 select 一 二 from dual union all select 三 四 from dual union all select 五 六 from dual union all select 七 八 from dual union all sel...

oracle一次插入多條資料

insert into 表名 欄位1,欄位2 select 一 二 from dual union all select 三 四 from dual union all select 五 六 from dual union all select 七 八 from dual union all sel...

oracle一次插入多條資料

insert into 表名 欄位1,欄位2 select 一 二 from dual union all select 三 四 from dual union all select 五 六 from dual union all select 七 八 from dual union all sel...