SQL随着子查询结果更新多个字段

笔者:iamlasong

要求:表格内容需要改变,在临时表中内容的变化,使用SQL官方声明更新表若干领域。

假设更新一个字段,直接用字段名=子查询就能够了,多个字段更新,将字段在括号里并列写出就可以,例如以下:

update tb_jg t
   set t.jgfl = 'sd',
       (     t.zj_code, t.zj_mc) = (select a.zj_code, a.zj_mc
                                      from song_temp a
                                     where a.zj_code = t.zj_code)
 where exists (select 1 from song_temp a where a.zj_code = t.zj_code)

需求:依据子查询创建表,语句例如以下:

create table sncn_zd_jg as select * from tb_jg where zdbz='1' order by city_code,xs_code;

假设表已经存在。以下语句则可插入查询结果:
insert into sncn_zd_jg select * from tb_jg where zdbz='1' order by city_code,xs_code;


版权声明:本文博客原创文章,博客,未经同意,不得转载。

你可能感兴趣的:(SQL随着子查询结果更新多个字段)