仮に以下のようなテーブルがあったとして
|列1|列2|列3|
table:a
|store |revision|deposit |tsubo | |UDON |1 |4,143,600 |[NULL] | |UDON |2 |4,143,600 |[NULL] | |UDON |3 |4,143,600 |[NULL] | |UDON |4 |4,143,600 |180000 | |Mac |1 |2,152,400 |[NULL] | |Mac |2 |2,152,400 |[NULL] | |Mac |3 |2,152,400 |[NULL] | |Mac |4 |2,152,400 |[NULL] | |Mac |5 |2,152,400 |[NULL] | |Mac |6 |2,152,400 |250000 | |TENPURA|1 |1,234,500 |[NULL] | |TENPURA|2 |1,234,500 |[NULL] | |TENPURA|3 |1,234,500 |[NULL] | |TENPURA|4 |1,234,500 |[NULL] | |TENPURA|5 |1,234,500 |120000 |
やりたいことは「store」ごとにstoreのmax「revision」を
NULLにUpdateしたいのですが
例:↑だとUDONのtsuboには180000、
Macには250000がすべてはいるようにする。
以下が作ったSQLですが
うまくいかず、どうすればよいかご教授頂きたいです。
update table_a a1 set a1.tsubo = select a2.store , a2.revision, a2.deposit, a2.tsubo from table_a a2 inner join (select store, max(revision) as revision from a3 group by store ) amax on a2.store = amax.store and a2.revision = amax.revision
コードはマークダウンのcode機能をご利用ください。マークダウンにはテーブル機能もあるのでそちらも利用されたら見やすくなります
