我需要从SQL Server 2008上的表中获取列值。
DECLARE @result TABLE
(
val FLOAT
);
insert into @result (val)
(
select SUM(c)/10 val from atable
)
DECLARE @myval float
SELECT @myval = @result.val # error : Must declare the scalar variable "@result". !!!
if @myval = null
begin
select @myval
end
为什么?
谢谢!答案 0 :(得分:1)
格式正确
SELECT @myval = val FROM @result
但我觉得创建一张桌子在这里是一种矫枉过正。你可以做简单的
select @myval = SUM(c)/10 from atable
如果我没记错你。
或者,如果您简单地返回总和的结果,只需执行
select SUM(c)/10 from atable
将结果返回给调用者而不会产生任何其他干扰。