• 締切済み

update文の副問い合わせ使用

2つのテーブルを結合して、片方のテーブルをUpdateしたいが、Update文での結合方法がよくわかりません。 table_a の excode列が更新対象で、table_aのname列とtable_bのname列の等価結合です。 テーブルとデータの例は以下です。 テーブル1:table_a create table table_a (code int(3), name varchar(10), excode int(6)); insert into table_a values (101,'あいう',0),(102,'かきく',0),(103,'たちつ',0),(201,'なにぬ',0),(301,'わをん',0); テーブル2:table_b create table table_b (excode int(6), name varchar(10)); insert into table_b values (500101,'あいう'),(500102,'かきく'),(500103,'たちつ'); 期待する結果は以下です。 SQL> select * from table_a; +------+--------+--------+ | code | name | excode | +------+--------+--------+ | 101 | あいう | 500101 | | 102 | かきく | 500102 | | 103 | たちつ | 500103 | +------+--------+--------+ MySQLバージョンは、5.0です。 よろしくお願いいたします。

みんなの回答

  • mooboogie
  • ベストアンサー率68% (28/41)
回答No.1

update table_a a join table_b b on a.name=b.name set a.excode=b.excode ; で、出来ます。

関連するQ&A