0

我面临一个关于 sql 查询的问题。

我有一个表结构

表_A

A_id : 10,20,30,40 
A_name: a,b,c,d  
B_id: null,null,null,null

表_B

B_id: 1,2,3,4  
B_name:n1,n2,n3,n4 
A_id: 10,20,30

现在我需要将 B_id 从 TABLE_A 复制到 TABLE_B 的 B_id,其中 TABLE_A 的 A_id 与 TABLE_B 的 A_id 相同

然后表格看起来像

表_A

A_id : 10,20,30,40  
A_name: a,b,c,d   
B_id: 1,2,3,null

我试过这个:

UPDATE TABLE_A 
SET B_id = a.B_id
from TABLE_A a 
WHERE TABLE_A.A_id = a.A_id

但它不起作用,错误是SQLCODE=-104, SQLSTATE=42601

4

2 回答 2

2

你试过这个

UPDATE TABLE_A SET B_id = b.B_id 
from TABLE_B b 
WHERE TABLE_A.A_id = b.A_id
于 2012-06-18T12:26:10.650 回答
1
update TABLE_A A,TABLE_b B set A.b_id = B.b_id where A.a_id = B.a_id;

如果您正在处理mysql. 不知道其他数据库是否会接受该语法。

于 2012-06-18T12:42:58.833 回答