基于与另一个表的连接更新表中的列值?

时间:2017-05-26 21:51:43

标签: sql database postgresql

我有两个名为resourceresource_owners的表。

resource_owners表包含两列名为resource_idowner_id的列。

resource_id | owner_id | -------------+-----------

resource表包含两个相关列:parentresource_idid

parentresource_id | id | -------------------+------

resource_owners.resource_idresource.idresource.parentresource_id都是两个表之间的连接列。现在我想做的是以下几点:

对于resource表格中的每一行,取id中的值,将其与对应的resource_owners.resource_id匹配,检索相应的resource_owners.owner_id值(称之为$ owner_value) ),然后将resource_owners.owner_id设置为$ owner_value ,其中 resource_owners.resource_id等于resource.parentresource_id

在会话术语中,这就是我想要做的:对于每个资源,我想重新将父资源的owner_id指定为资源的owner_id。

我试图解决这个问题,看起来我需要两个不同的表连接(resource.idresource_owners.resource_idresource.parentresource_idresource_owners.resource_id )。

有人能指出我正确的方向吗?我想要一个查询甚至可能吗?如果对我的用例更好的话,我也可以使用PostgreSQL脚本。

1 个答案:

答案 0 :(得分:1)

我不确定您使用的数据库,但如果我正确理解您的问题,您应该能够使用下面的逻辑完成:

imports: [ CommonModule, FormsModule, routingTournament, HttpModule ]