insert......select
select查询的表有多个,这些表的结构相同。
如何实现将这些表中的数据,通过使用一条语句,插入到另一个表中(insert表)。除 每个要查询的表都 使用insert......select 语句,循环实现外,
还有什么好的方法?

解决方案 »

  1.   

    insert into tt 
    select * from (
    select * from b1
    union
    select * from b2)
      

  2.   

    or
    insert into aa2 
    select * from aa
    union
    select * from aa1
      

  3.   

    insert into aa2 
    select * from aa 
    union 
    select * from aa1可行只是,我要查询的表,一种情况是7张表,
                      另一种情况是一个月的数量表(最多31张表)
    如果使用这种联合方式,mysql的语句会很长。
    因为本身select的where 和 group by 也占有一定长度。
      

  4.   

    表多的话循环撒....
      不多就UNION关键看业务撒 
      

  5.   

    除了UNION,就是循环、分别执行insert into select
    似乎没有更好的方法