如果我有这样的功能
dbo.GetTable(@myInteger)
我可以从结果表中按名称选择列,并将它们分配给SQL Server 2005中后续函数中的变量吗?
或者在后续函数中创建临时表并使用
的结果填充它更有效dbo.GetTable(@myInteger)
这样你只需要调用上面的函数一次,而不是像
那样DECLARE @IntegerOne Integer = dbo.GetTable(@myInteger).Column1
DECLARE @IntegerTwo Integer = dbo.GetTable(@myInteger).Column2
DECLARE @IntegerThree Integer = dbo.GetTable(@myInteger).Column3
等
答案 0 :(得分:1)
不确定我的问题是否正确,对于表格功能,这将有效:
select
@IntegerOne = Column1,
@IntegerTwo = Column2,
@IntegerThree = Column3
from dbo.GetTable(@myInteger)
答案 1 :(得分:1)
如果它是一个表值函数,你就可以像对待表一样对待它,你可以做类似......
DECLARE @IntegerOne Integer;
DECLARE @IntegerTwo Integer;
DECLARE @IntegerThree Integer;
SELECT TOP 1 --<-- To make sure only one row is returned
@IntegerOne = Column1
,@IntegerTwo = Column2
,@IntegerThree = Column3
FROM dbo.GetTable(@myInteger)
--WHERE Clause if required