gpt4 book ai didi

sql-server - 句柄 "Divide by zero error encountered error"

转载 作者:行者123 更新时间:2023-12-03 03:07:11 24 4
gpt4 key购买 nike

    SELECT   ((CASE WHEN (qid2.AgeBelow_16 - qid1.AgeBelow_16)= 0 THEN 1 ELSE (qid2.AgeBelow_16- qid1.AgeBelow_16) END )/ (CASE WHEN [qid1].AgeBelow_16= 0 THEN 1 ELSE [qid1].AgeBelow_16  END))*100 AS AgeBelow_16_Percent, 
-- otherfields

FROM
-- whole query

我正在使用上面的查询来计算旧值和新值的百分比差异。主要问题是0,如果任何字段值为0,则抛出“除以零错误遇到错误”,所以我使用case when then else end。上面的实现是好的还是可以写得更好,请建议我,因为当字段很大(如 10 以上)时会更加困惑。

最佳答案

也许是这样的?

declare @X int = 0
select 10 / isnull(nullif(@X, 0), 1)

关于sql-server - 句柄 "Divide by zero error encountered error",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6937318/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com