2012-02-02 50 views
0

我有表A,B如何在这种情况下更新我的行?

A持有NETWORK_ID,柱了一个subscription_id

B就掌握了一个subscription_id(外键)和card_id的列

我将只需要更新card_id的(说值50)到具有的NETWORK_ID B的行的所有实例说39

因此,如果这是一个表本来是很容易,只需:

update table set CARD_ID=50 where NETWORK_ID=39; 

但我怎么在这里呢?

回答

1

试试这个

UPDATE tableA A, tableB B 
    SET B.CARD_ID = 50 
    WHERE A.SUBSCRIPTION_ID = B.SUBSCRIPTION_ID 
    AND A.NETWORK_ID = 39 
+0

感谢您的快速响应,我得到“表A不存在......”虽然。当我把tableA和tableB拿出来的时候它确实有效,这看起来是否正确? – Ted 2012-02-02 01:34:47

+0

'tableA'和'tableB'这里是实际的表名,'A'和'B'是查询中使用的别名。如果'A'和'B'确实是你的餐桌名字,那么是的,只是使用它而忘记别名,因为你并不需要它们。 – Vache 2012-02-02 02:09:26