有一张临时生成的表,
如何在从这张临时表里读取记录时按数据库的默认次序依次插入到新的物理表中参考代码
insert into a
select 1,* from temp_tb
a的列数只比temp_tb多一个主key字段temp_tb是通过select into temp_bb from ..表来的如select * from temp_tb 得以的记录如下 :
1 aaa aa a
2 bbb bb b
3 ccc cc c而经过insert into a
select 1,* from temp_tbselect * from a
得到却是
1 2 bbb bb b
1 1 aaa aa a
1 3 ccc cc c想要的次序是
1 1 aaa aa a
1 2 bbb bb b
1 3 ccc cc c

解决方案 »

  1.   

    declare @t table(A int,B int,C varchar(20),D varchar(20),E varchar(20))
    insert into @t select 1,2,'bbb','bb','b'
    union all select 1,1,'aaa','aa','a'
    union all select 1,3,'ccc','cc','c'
    select * into t1 from @t order by B asc
    select * from t1
      

  2.   

    加上order by a
    a为1,2,3那一列
      

  3.   

    忘了说,不能用select into a
    只能用insert into a 
     
    因为表a 已经存在,只是往里加记录