結合を使用して次の更新クエリを実行しようとしていますが、一致する行が更新されません。
UPDATE table1 T1
INNER JOIN table2 T2 ON T2.id=10
INNER JOIN table3 T3 ON T3.category_id=T2.category_id
SET T1.value=T3.value
WHERE T1.id=T3.id
MySQL は、ネストされた結合を使用した更新クエリをサポートしていますか?
結合を使用して次の更新クエリを実行しようとしていますが、一致する行が更新されません。
UPDATE table1 T1
INNER JOIN table2 T2 ON T2.id=10
INNER JOIN table3 T3 ON T3.category_id=T2.category_id
SET T1.value=T3.value
WHERE T1.id=T3.id
MySQL は、ネストされた結合を使用した更新クエリをサポートしていますか?
UPDATE table1 T1
SET T1.value=T3.value
INNER JOIN table2 T2 ON T2.id=10
INNER JOIN table3 T3 ON T3.category_id=T2.category_id
WHERE T1.id=T3.id
あなたのクエリはうまくいくはずだと言いたくなりました。しかし、MySQL は、2 行目の結合条件が table1 とほとんど関係がないという事実を気に入らないのでしょうか?
以下は機能しますか?
UPDATE table1 T1
INNER JOIN table3 T3 ON T3.id = T1.id
INNER JOIN table2 T2 ON T2.category_id = T3.category_id
SET T1.value = T3.value
WHERE T2.id = 10