我想将表2的随机名称插入表1的记录中。
是否可以在简单的SQL语句中实现这一点?
亲切的问候
答案 0 :(得分:0)
我认为,您希望将table2中的所有名称插入到table1中,而那些名称尚未存在
INSERT INTO Table1 (name)
SELECT table2.Name
From table2
Where table2.Name NOT IN (SELECT table1.Name From table1)
答案 1 :(得分:0)
这样可以获得100个随机名称:
insert into table1(name)
select name
from (select name
from table2
order by dbms_random.random()
) t
where rownum <= 100;
当然,您可能希望为其他列提供值,但您的问题似乎是关于从第二个表中获取随机值。
在Oracle 12中,您不需要子查询。您可以使用fetch first <n> rows only
。