遇到除以零错误,但应由 CASE 排除

问题描述

我有以下代码,但出现错误:

遇到除以零错误。

SELECT
CASE WHEN SUM([monthly_qty]) = 0 THEN 999 
ELSE ROUND(SUM([monthly_buy] * ([monthly_markup]+100)/100),2) * SUM([monthly_qty] / [monthly_qty]) END as [monthly_total]
FROM [xxxxx].[dbo].[quote_items] WHERE docid='10152' 

导致错误的字段是第二个 [monthly_qty],就在 CASE 语句的 END 之前。

SUM([monthly_qty] / **[monthly_qty]**) 

month_qty 的值为零,所以错误是有道理的,但我很困惑,因为这个字段在 CASE 语句中,所以预期结果是 999

非常感谢任何帮助。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)