手抄报 安全手抄报 手抄报内容 手抄报图片 英语手抄报 清明节手抄报 节约用水手抄报

处理 TSQL 遇到以零作除数错误

时间:2024-10-29 01:51:20

【直接结合具体的实例嘉滤淀驺】

今天做数据分析的时候。

要算一个数据就是 每个单位人均资产在5万的过滤出来

数据表中 资产有的为0,人数有的为0.那么如果学过数学的都知道,0不能做除数。

【结构如图:】

处理 TSQL 遇到以零作除数错误

那么。可以通过2种方式解决。

第一种 :

人数为零或是支出为零的话单独作为一种情况。

人数不能零的单独作为一种计算。

所以:

select mingcheng,zichan/qimorenshu as '人均资产' from dbo.a0414_sileicuowo

where (qimorenshu<>0) and zichan/qimorenshu<50000

以上两种情况相加即可。【注意:zichan,qimorenshu 字段 默认值设置为0,非NULL

还可以使用

set ansi_warnings off

SET ARITHABORT off

SET ARITHIGNORE on

select mingcheng,zichan/qimorenshu as '人均资产' from dbo.a0414_sileicuowo

where zichan/qimorenshu<50000 --or (zichan/qimorenshu is null)

上面的黑体,表示 关闭运算中断。

也就是说 在

set ansi_warnings off

SET ARITHABORT off

SET ARITHIGNORE on

后 那么select 0/0 结果是null.

如图所示:

处理 TSQL 遇到以零作除数错误

所以。也可以解决问题。

------------------------------------------

【注意:】

set ansi_warnings off

SET ARITHABORT off

SET ARITHIGNORE on

运行后,默认是关闭了运算检查中断。如果想恢复正常

需要

set ansi_warnings ON

SET ARITHABORT ON

SET ARITHIGNORE on

切记切记。

© 手抄报圈