select *  
from OPENROWSET('SQLOLEDB','SERVER=.;UID=sa;PWD=','exec servername.dbo.proc_name  ''0000900586''') AS a 

解决方案 »

  1.   

    或是用中间表insert ta exec HL_CountPrice '0000900586'
    select * from ta
      

  2.   

    select *  
    from OPENROWSET('SQLOLEDB','SERVER=.;UID=sa;PWD=','exec servername.dbo. HL_CountPrice ''0000900586''') AS a 
      

  3.   

    有人知道不?其实我最终的目的就是想实现如下代码:select a.typeid 'ptypeid',a.fullname'商品全名',a.unit1 '单位'
           b.lastBuyPriceD '最后进价销售',b.avgPriceD '库存销售',b.hqPriceD'行情销售'
           b.minSalePrice'安全售价',b.recSalePrice'建议售价',b.maxsaleprice'最高售价'
    from   hl_ptype a join (exec HL_CountPrice a.typeid) b on a.typeid=b.ptypeid
      

  4.   

    exec HL_CountPrice a.typeid 这个先放入一个临时表以后再去和前面的表连接。
    create table #a

      存储过程返回的表的列,注意列的类型

    insert into #a
    exec HL_CountPrice a.typeid 
    然后再去和hl_ptype 连接。
    以上。
      

  5.   


    根据a.typeid 做个游标循环往临时表放数据,放一次就和hl_ptype 连接一次,处理完以后清空临时表数据,循环下去,如果你的表不超过2000个,问题不大,速度可以保证。以上。
      

  6.   


    你这个似乎不要用过程直接hl_ptype和你过程里的表直接关联就行的呀
      

  7.   

    再写个存储过程
    select * from 包进去