select * from users  union  select* from users
这样写是对的exec p_select 也可以执行exec p_select  union  exec p_select  这样就报错了,请问该怎么写

解决方案 »

  1.   

    放临时表再union all
    create table #T1(collist...)
    insert #T1 exec P_select ...
    create table #T2(collist...)
    insert #T2 exec P_select ...
    go
    select * from #t1
    union all
    select * from #t2
      

  2.   

    可以用临时表,一个就行create table #tb (结果集所有字段)insert into #tb exec P_select ...
    insert into #tb exec P_select
      

  3.   


    用表和临时表都行
    insert into #tb exec  过程
    insert into tb exec 过程select * from #tb union select * from tb
      

  4.   

    union不能直接这样用,可以用临时表分别存储结果,然后再通过union临时表的结果就可以了