我是SQL Server的新手,我想问一个查询 假设我有一个返回四个值的函数,例如
set @RetValue=@PendingFlag + @Status + @BTFound + @ValueDate
和RETURN @RetValue
。
现在假设我从另一个函数调用这个函数,比如假设:
DECLARE @d VARCHAR(max)
SET@d=dbo.ValidateBTtype(@BType,@ReadBT,@Type,@Id,@ClientId,@Customerno,@InterestDate,@ApplicationType)
在@d
中,我有四个值
但我想要做的是我想要返回的值,我想将它分别存储在局部变量中,如局部变量@PendingFlag=
返回值(@Pending Flag
)局部变量@Status
=返回值( @Status
)等等。
请帮我如何通过调用第一个函数
将返回的值分别存储在第二个函数中答案 0 :(得分:2)
您可以从函数返回一个表,其中表有一行,四列,每列返回一个。
有关表值函数的详细信息,请参阅here。
答案 1 :(得分:0)
可能的方法:
在dbo.ValidateBTtype
函数中用逗号分割四个字符串(或值),然后使用逗号作为分隔符将@d
字符串拆分为4个部分
像这样:
@RetValue= @PendingFlag + ',' + @Status + ',' + @BTFound + ','+ @ValueDate
...或者创建表值函数..
答案 2 :(得分:0)
请参阅here'如何从sql server函数返回多个值'。或谷歌的SQL服务器从函数'返回多个值并选择。
干杯 -
答案 3 :(得分:-1)
您需要研究SQL Concepts
使用SQlClient类进行SQL查询。
查看DataSet类,它通常用于存储“多个返回值”
http://www.dotnetperls.com/sqlclient