我对SQL Server很陌生,我想问一个查询,假设我有一个函数,它返回四个值,比如。
set @RetValue=@PendingFlag + @Status + @BTFound + @ValueDate和RETURN @RetValue.现在假设im从另一个函数调用这个函数,比如:
DECLARE @d VARCHAR(max)
SET@d=dbo.ValidateBTtype(@BType,@ReadBT,@Type,@Id,@ClientId,@Customerno,@InterestDate,@ApplicationType)在@d中,il有所有的四个值,但我想要的是返回的值,并将其分别存储在局部变量@PendingFlag=返回值(@Pending Flag)、局部变量@Status=返回值(@Status)等局部变量中。
请帮助我通过调用第一个函数,将返回的值分别存储在第二个函数中。
发布于 2014-01-03 10:59:16
您可以从函数返回一个表,其中表有一行,四列,每个返回值一个列。
有关表值函数的详细信息,请参见这里。
发布于 2014-01-03 10:59:55
在这方面可能采取的办法:
在dbo.ValidateBTtype函数中,用逗号分隔四个字符串(或值),然后使用逗号分隔符将@d字符串拆分成4个部分,如下所示:
@RetValue= @PendingFlag + ',' + @Status + ',' + @BTFound + ','+ @ValueDate
...or创建表值函数。
发布于 2014-01-03 11:00:25
请参见这里“如何从server函数返回多个值”。或者google 'sql server从函数返回多个值‘并选择。
干杯-
https://stackoverflow.com/questions/20901883
复制相似问题