oracle - 如何多次将表中的唯一值插入到另一个表中?

时间:2014-06-05 20:46:12

标签: sql oracle insert

使用Oracle 12c,我在一个表TABLEA的PK列中有5行,值为1,2,3,4,5。我想在另一个表TABLEB中插入值3次。因此,在插入之后,TABLE将具有15行,其值为1,1,1,2,2,2,3,3,3,4,4,4,5,5,5。我怎样才能做到这一点?

我尝试创建一个脚本,如果它们不存在,则会将TABLEA的值插入TABLEB。目前,我手动将TABLEB的每个值手动插入TABLEA 3次。

1 个答案:

答案 0 :(得分:1)

您可以使用cross join。查询看起来像这样:

insert into t(pk)
    select pk
    from table t2 cross join
         (select 1 as n from dual union all select 2 from dual union all select 3 from dual
         ) n;