用现有表往另一张表插数据

设有A表:create table A(int  id,varchar(10)  name, varchar(1) gender)

  有B表:create table B(int  id,varchar(10)  name, varchar(1) gender, int money, int tax)

 

特点:B表结构是A表结构 多了几个字段 

情景零:将A表完全复制(结构+数据)

                create table C  as select *  from A

情景一:将 A 表中的数据全部复制到B表中,指定B表中字段即可。B中字段与A中不连续对应的情况亦可。

                insert into B (id, name ,gender)  select *  from A;

情景二:将A 表中的数据全部复制到B表中,要求B中所以字段都填满

               insert into B select a.*,100,2 from A a 

                   或

               insert into B select a.*,100,2 from A a  where a.gender='m'

            这种情景可以扩展至,将多个表数据复制到同一个表,多个表用where关联。

 

posted @ 2017-03-29 23:12  conserdao  阅读(297)  评论(0编辑  收藏  举报