插入动态数量的子记录

时间:2014-07-22 15:19:38

标签: sql oracle loops parent-child

现在有一点大脑冻结,我有一个可以捕获数字的变量。我需要使用该数字来插入那么多的子记录。我怎样才能在SQL中实现它?

理想情况下,我需要一个insert语句,但我需要它执行我的变量指定的次数。

如果变量说3 ...我需要插入运行3次......

1 个答案:

答案 0 :(得分:0)

在您的问题中继续下去并且不清楚要插入的数据在每行中是相同的还是不同的,但是要插入5个相同的行:

INSERT INTO the_table ( c1, c2, c3 )
SELECT value1, value2, value3
FROM dual
CONNECT BY level <= 5;

或者,在PLSQL中:

BEGIN
  FOR x IN 1..5 LOOP
     INSERT INTO the_table ( c1, c2, c3 )
     VALUES ( value1, value2, value3 );
  END LOOP:
END: