如何使用 for 循环选择字段值并将它们插入到另一个表中
Posted
技术标签:
【中文标题】如何使用 for 循环选择字段值并将它们插入到另一个表中【英文标题】:How to select field values and insert them in another table with for loop 【发布时间】:2017-11-30 20:32:44 【问题描述】:我想在 Postgres 中编写一个函数,该函数从表 A 中选择一列,然后循环遍历这些值并将它们插入表 B。
这是我目前所拥有的:
declare
aid integer
begin
for aid in select a_id from table_a
loop
insert into table_b (a_id)
values (aid)
end loop;
end;
但是,我在for aid in select a_id from table_a
行遇到了语法错误。这样做的正确方法是什么?
【问题讨论】:
【参考方案1】:您不需要循环 - 只需一个插入选择语句:
INSERT INTO table_b (a_id)
SELECT a_id FROM table_a
【讨论】:
如果我需要将另一个字段与作为函数参数的 a_id 一起插入到 table_b 怎么办? @ddd 只是选择它作为文字 但是select
返回的是一个整数数组,而要插入的另一个变量是单个值。将一个数组和一个整数同时插入两个整数字段是如何工作的?
@ddd 此评论完全不清楚。请使用您要解决的实际用例编辑您的问题以上是关于如何使用 for 循环选择字段值并将它们插入到另一个表中的主要内容,如果未能解决你的问题,请参考以下文章
循环遍历一张表中的列值并将另一列中的 COUNTIF 值粘贴到另一张表中
雪花我们如何遍历临时表的每一行并将其值插入到另一个表中,其中每个字段的值都是单行?