从同一个表更新表。另一个表

时间:2016-01-07 16:35:32

标签: mysql sql

我有一个包含这样的记录的表格,名为garanzie_row

id_cred         id_gar
CD000001440     CD000001068

CD000001440和CD000001068在另一个表中定义,并且每个表都具有状态。 此表名为crediti

id_cre          STATUS
CD000001440   open
CD000001068   

我想要做的是迭代第一个表中记录中的所有记录,并在第二个表中设置每个CRED B的状态作为相应CRED A的状态

但我找不到单个查询来进行选择和更新一个部分(显然步骤很容易)

1 个答案:

答案 0 :(得分:1)

如果我理解正确,您可以使用updatejoin来执行此操作:

update crediti cb join
       garanzie_row gr
       on cb.cred = gr.credb join
       crediti ca
       on ca.cred = gr.creda
    set cb.status = ca.status;