首页 > 解决方案 > 使用另一个表中的 id 更新行的 SQL 语句

问题描述

并提前感谢。我有一个名为 users 的表,其中包含一个 id。我想仅从该表中收集 id 并使用这些 id 作为参数之一运行和插入。我是 SQL 新手,在寻找帮助或解决方案时遇到了一些麻烦。这是获取 id 的语句 SELECT id FROM public.users使用返回的 id 我想运行类似的插入或更新insert into public.history (user_id, password, change_time) values (<ids from prev SELECT>, 'password', now()); 我可以生成一个循环吗?有人可以使用纯 sql 为我指出正确的方向吗,我知道这可以在 php 中实现,但我想将其包含在仅使用 SQL 的 db init 中。

标签: mysqlsqlselectinsert

解决方案


你可以这样做INSERT INTO ... SELECT

INSERT INTO public.history (user_id, password, change_time) 
SELECT id, 'password', now() 
FROM public.users 

推荐阅读