2016-01-07 112 views
0

记录之间的关系我有一个表,像这样的记录叫garanzie_row从同一张表中更新表格。在另一台

id_cred   id_gar 
CD000001440  CD000001068 

CD000001440和CD000001068在另一个表中定义和他们每个人都有一个状态。 此表被命名为crediti

id_cre   STATUS 
CD000001440 open 
CD000001068 

我希望做的是迭代在第​​一个表中的记录的所有记录,在第二个表中设定的状态为每个CRED B中的地位相应CRED一个

,但我无法找到一个单一的查询做选择,并在一块的更新(明显的步骤它的工作原理很容易)

回答

1

如果我理解正确的话,你可以用update做到这一点, join s:

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; 
+0

所以你选择第二张表两次。你第一次打电话给某人并选择要更新的信用卡。第二次用sa选择包含要复制的状态的记录。我对吗? –

+0

@LelioFaieta。 。 。这听起来很正确。 –

+0

我只是想念一点:你在谈论sb.credb和sa.creda,但这些都是第一张桌子的字段......你可以检查查询吗?我用真实姓名更新了这个问题。目标是让CD000001068的状态在第二个表中打开,因为CD000001440具有相同的状态,并且两个连接在第一个表中 –

相关问题