在预期结果时,命令已成功完成

时间:2012-10-18 19:02:52

标签: sql-server-2005

我创建的存储过程最初有效,但要求已更改。现在的要求基本上是结果应该是:

item | totalproperty1 | percentofproperty1 | totalproperty2 | ...

在这样做时,我们需要计算百分比计算的分母总数(以防止必须再次重新计算百分比的总和)。为了尝试这样做,我尝试了这个:

Declare @Item varchar(50)
Declare @TotalProperty1 decimal (9,2)
Declare @PercentProperty1 decimal (9,2)
Declare @TotalProperty2 decimal (9,2)
...

......只是声明了总数和百分比项目,整个数据类型相同(这是一个丑陋的混乱,我道歉)

select @Item = item,
       @TotalProperty1 = (--long query to get the total
                          ),
       @PercentProperty1 = (--long query to get the items compared
                             / @TotalProperty1),
       ...

from table1 join table2 on table1.table2ID = table2.ID
where -- condition

本节中的...是重复的总计/百分比计算,仅适用于不同的属性。

我删除了每个子查询上的右括号,并对它们进行了读取以验证它们是否与子查询的开头相匹配。之前,计算基本上是所有属性匹配与项目总数的总和,但要求使其更精细。

当我尝试执行alter脚本时,它会显示“Command(s)已成功完成”。这很棒,但是当我尝试执行存储过程时,它也会返回“命令已成功完成”。这不是预期的结果(我认为“选择@item ...条件”部分仍然应该返回select语句,对吗?)。

之前的工作与当前工作的主要变化是之前,我没有做select变量=查询,变量2 =查询等,而是一个典型的select语句。如果我不得不猜测,这就是问题所在,但我正在使用this as a guide来处理我在中途收到的消息141.

0 个答案:

没有答案