2012-02-10 11 views
1

更新できません:のmysql - UPDATEの対象テーブルは、私は、次のSQLクエリを持って

UPDATE 
(SELECT * FROM table_A INNER JOIN table_B 
ON table_A.id=table_B.a_fk 
WHERE table_A.batch=10) AS TBL_1 
SET TBL_1.b_name = "test" WHERE TBL_1.a_fk = 67532; 

私はそれを実行すると、私は次のエラーメッセージが出ます:

The target table TBL_1 of the UPDATE is not updatable. 

を私がする必要がありますtable_Aのバッチ値が10であるtable_Bの列 'b_name'を更新します。

ご協力いただきまして誠にありがとうございます。

+0

あなたはこの部分のみを実行したときに 'table_A SELECT * FROM ...' uは一見 – mgraph

+0

を得るのですか何、あなたは "" SET table_B.b_nameは= "テスト" と言うべきではないのですか? –

答えて

1
update table_B b 
set b.b_name = 'test' 
where b.a_fk in 
(
select id from table_A where batch=10 
) 
関連する問題