別のテーブルの値でレコードを更新したいというとき、SELECTを行った結果を、UPDATEすることになり、プログラムなどでループする手法をとることがあります。 しかしSQL文のみで、これを行うことができ、SELECTの副問い合わせを使用してUPDATEします。 ところがMySQLではUPDATE文にSELECTの副問い合わせをすることができません。 複数のテーブルをJOINした結果でUPDATEするには、UPDATE文のテーブルを複数指定し、変更するテーブルレコードのみにSETを指定します。 UPDATE A_table, B_table SET A_table.name = B_table.name WHERE A_table.id = B_table.id このようにすることで、テーブルA_tableのレコードとテーブルB_tableのレコードでidが一致するもののテーブルA_tabl