有没有办法在不使用FORLOOP的情况下创建虚拟记录?
我不知道如何在不使用 FOR LOOP 的情况下放置 1000000 个虚拟数据。这是我使用的代码:
CREATE TABLE dummy_records (
dummy_id number not null,
dummy_name varchar2(100)
);
BEGIN
FOR loop_counter IN 1..1000000 LOOP
INSERT INTO dummy_records (dummy_id, dummy_name) VALUES (loop_counter, dbms_random.value(1,100));
END LOOP;
END;
回答
简单的按级别连接怎么样?
create table mytable as
select level dummy_id,
dbms_random.string('U', 20) dummy_name
from dual connect by level < 1000001
http://sqlfiddle.com/#!4/8d677/1