declare @var1 float
declare @var2 float
set @var1=sum(10)
set @var2=count(750)
select cast(@var1 as float) / cast(@var2 AS float)
上面的查询返回值10,但正确答案应为0.0133。为什么铸件在这里不起作用?
我使用另一个查询的sum和count获取@ var1和@ var2值。这里10和750是虚拟值。
答案 0 :(得分:2)
它正在按预期工作。单个值的count
将为1
因此,10/1
除以10
declare @var1 float
declare @var2 float
set @var1=sum(10)
set @var2=count(750) -- will return 1
select cast(@var1 as float) / cast(@var2 AS float) --10
如果您需要0.0133
,请删除count
set @var1=sum(10)
set @var2=750
select cast(@var1 as float) / cast(@var2 AS float) -- 0.01333
答案 1 :(得分:1)
因为count(750)
是1
。
count
计算记录,而不是()