首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何使用Postgressql在循环中插入其他表中具有id的新行

如何使用Postgressql在循环中插入其他表中具有id的新行
EN

Stack Overflow用户
提问于 2019-10-11 15:45:06
回答 1查看 35关注 0票数 0

我想为存在于db:select id * from users中的每个用户在profit表中插入新的行。用户的数量是动态的,所以我需要获取所有的用户。我需要postgres sql中的一些循环。我自己解决这个问题有问题。应该是这样的:

select id * from users as user_ids

代码语言:javascript
运行
复制
for (each userId in user_ids) {
 insert into profit (user_id, value) values (userId, 23);
}

我能向你寻求帮助吗?我已经问了很多问题了:

Insert new row with data computed from other rows

postgresSQL insert multiple rows, of id returned from select queries

到目前为止还没有运气

EN

Stack Overflow用户

回答已采纳

发布于 2019-10-11 15:46:50

在使用SQL时,在“循环”中思考几乎总是错误的。你需要从集合的角度思考,以及如何对它们进行操作。SQL语句准确地描述了这一点:如何检索集合以及如何处理这组行。

在这种情况下,您可以使用SELECT语句作为INSERT的源:

代码语言:javascript
运行
复制
insert into profit (user_id, value) 
select id, 23
from users;

请注意,在本例中没有values子句。

票数 2
EN
查看全部 1 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58336518

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档