繁体   English   中英

对表中的每个值运行 SQL 查询

[英]Run SQL query for each value in table

我有一个名为delegation_table 的表,如下所示:

delegator | delegatee

josh      | ryan
carl      | nick
sam       | john

还有一个叫做permission_table的表如下:

username | location | branch   | office

josh     | usa      |New York  | downtown
carl     | asia     | India    | north
sam      | usa      |California| midtown

对于来自delegation_table每个delegators ,我想从permission_table获取他们的详细信息,并插入一行,其中的详细信息与相应的delegatee username相同。

例如 - 我想找到 josh 的详细信息,它是:

josh     | usa      |New York  | downtown

并在permission_table插入这一行:

ryan     | usa      |New York  | downtown

像这样的东西:

insert into permission_table
(username, location, branch, office)
select 'ryan' as username, location, branch, office
from permission_table
where username = 'josh'

但我不想硬编码值,并希望为每一个运行该delegatordelegation_table 我怎么做??

这似乎是一个join

insert into permission_table (username, location, branch, office)
    select dt.delegatee, location, branch, office
    from permission_table pt join
         delegation_table dt
         on dt.delegator = pt.username;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM