码迷,mamicode.com
首页 > 数据库 > 详细

sqlserver在函数中使用临时表

时间:2015-06-30 18:11:55      阅读:293      评论:0      收藏:0      [点我收藏+]

标签:

-- 根据大订单号查询已付供应商金额(已付-已退)
ALTER FUNCTION [dbo].[F__SupplierPayOffAmountBOrder]
(
 -- Add the parameters for the function here
  @BOrderId int 
)
RETURNS decimal
AS
BEGIN
 declare @payOffAmount decimal
 set @payOffAmount=0
 
 declare @SorderIdTemp table(ID int) --定义临时表
 
 insert INTO @SorderIdTemp(ID)
 select ID 
 from TongYe..Borders_Orders_s
 where ParentID=@BOrderId and IsValid=1 and OrderStatus<>17
 
 while exists (select ID from @SorderIdTemp)
 BEGIN
  DECLARE @sid int
  select TOP 1 @sid=ID from @SorderIdTemp
   
  set @payOffAmount = @payOffAmount + ISNULL(dbo.F__SupplierPayOffAmount(@sid),0)
  
  delete from @SorderIdTemp where ID=@sid
  
 END
 
 return Isnull( @payOffAmount,0)
END

sqlserver在函数中使用临时表

标签:

原文地址:http://www.cnblogs.com/rana4504/p/4611032.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!