create procedure [dbo].[SP__STATISTIC_SELECT_PRINTINFO]
   @SortDate     datetime   ,                        --日期
   @Oci_Uuid     nvarchar(64)                     --UUID
AS 
begin
  declare @TotalNUM     int                        --总量
  declare @PrintedNUM   int                        --开始量  
  declare @CigBrandCode nvarchar(13)               --代码
  declare @Cig_trade nvarchar(100)             --名称  declare @TempSql nvarchar(4000)    set @TempSql='select oci_cig_brand,oci_cig_trade from bp_order_cig_info where oci_uuid ='''+@Oci_Uuid+''
  --执行这个SQL,怎么写获得oci_cig_brand,oci_cig_trade的值,并赋予@CigBrandCode ,@trade 两个变量-- 下面获得总量是这样获得值execute sp_executesql @TempSql,N'@TotalNUM int out',@TotalNUM out
  
  set @TempSql='select @TotalNUM=count(*) from bp_order_cig_info where 
oci_uuid in (select oi_uuid from bp_order_info where oi_sort_date ='''+@SortDate+''' )'
    +'and oci_cig_brand='''+@CigBrandCode+'' execute sp_executesql @TempSql,N'@TotalNUM int out',@TotalNUM out  
--
end

解决方案 »

  1.   

    set @TempSql='select oci_cig_brand,oci_cig_trade from bp_order_cig_info where oci_uuid ='''+@Oci_Uuid+''
      --执行这个SQL,怎么写获得oci_cig_brand,oci_cig_trade的值,并赋予@CigBrandCode ,@trade 两个变量

    set @TempSql=N'select @CigBrandCode=oci_cig_brand,@trade=oci_cig_trade from bp_order_cig_info where oci_uuid ='''+@Oci_Uuid+''''exec sp_executesql @TempSql,N'@CigBrandCode nvarchar(13) output,@trademar nvarchar(100) output',@CigBrandCode output,@trade outputselect @CigBrandCode,@trade