快速生成大量模拟数据的方法:
create table TEST(id integer, TEST_NUMBER NUMBER(18,6));
insert into TEST
select i+j, i+j
from (
with DATA2(j) as (
select 0 j from DUAL
union all
select j+1000 from DATA2 where j < 999000
)
select j from DATA2
),
(
with DATA1(i) as (
select 1 i from DUAL
union all
select i+1 from DATA1 where i < 1000
)
select i from DATA1
);
这是生成10万条数据
如果生成1000完条数据,则变成:
create table TEST(id integer, TEST_NUMBER NUMBER(18,6));
insert into TEST
select i+j, i+j
from (
with DATA2(j) as (
select 0 j from DUAL
union all
select j+1000 from DATA2 where j < 99990000
)
select j from DATA2
),
(
with DATA1(i) as (
select 1 i from DUAL
union all
select i+1 from DATA1 where i < 10000
)
select i from DATA1
);