我有一个表(人物)列(id,name,year)。有什么方法可以获取所有ID(SELECT id FROM people
)并使用它们在其他表(people_id,additional_info)中创建新行。我的意思是,对于表中的每个id,我想在其他表中添加包含id和一些附加信息的新行。也许这里需要像for-loop这样的东西?
答案 0 :(得分:1)
嗯,通常你有一个人的信息,并用这些信息写一条记录。为所有人写空记录很有意义。而且,当每人只有一条记录时,为什么不简单地在人员表中添加一个信息栏?
无论如何,你可以创建模拟记录:
insert into people_info (people_id, additional_info)
select id, null from people;
答案 1 :(得分:0)
Insert into targetTable (id, additional_info)
select id,'additionalinfo' from PEOPLE
不需要for循环,只需使用上面的查询。
答案 2 :(得分:0)
您可以使用INSERT ... SELECT语法将行插入people_info表(文档here)。
e.g。
insert into people_info(...)
select (...) from people; <and posibly other tables>