首先写个测试数据,然后我们来求一下colone除以coltwo的商
declare @table table (id int,colone numeric(4,2),coltwo numeric(2,1))
insert into @table
select 1,1.2,0.4 union all
select 2,1.4,0.6 union all
select 3,1.8,0.8 union all
select 4,9.1,1.2 union all
select 5,9.02,2.9 union all
select 6,9.11,3.4 union all
select 7,8.23,2.3 union all
select 8,12.11,0 union all
select 9,2.3,8.1 union all
select 10,2.5,0
我们来看一下数据表中的数据:
select * from @table
/*
id colone coltwo
----------- ---------------------------------------
1 1.20 0.4
2 1.40 0.6
3 1.80 0.8
4 9.10 1.2
5 9.02 2.9
6 9.11 3.4
7 8.23 2.3
8 12.11 0.0
9 2.30 8.1
10 2.50 0.0
*/
如果直接这样写会报错:
select colone/coltwo from @table
错误信息:Divide by zero error encountered.
怎么来处理这个问题呢?
--方法一:case when
select round(colone/case coltwo when 0 then null else coltwo end,2) as result1 from @table
/*
result1
---------------------------------------
3.000000
2.330000
2.250000
7.580000
3.110000
2.680000
3.580000
NULL
*/
--方法二:nullif
select round(colone/nullif(coltwo,0),2) as result2 from @table
/*
result2
---------------------------------------
3.000000
2.330000
2.250000
7.580000
3.110000
2.680000
3.580000
NULL
0.280000
NULL
*/
如果我们不想让分母为0的返回null的话,我们可以处理分母为1
分享到:
相关推荐
SQL Server查询中的特殊字符处理 我们都知道SQL Server查询过程中,单引号“'”是特殊字符,所以在查询的时候要转换成双单引号“''”。 但这只是特殊字符的一个,在实际项目中,发现对于like操作还有以下特殊字符:...
现将几种主要情况进行小结: 一、如何输入NULL值 如果不输入null值,当时间为空时,会默认写入”1900-01-01″,在业务处理时很麻烦。 ctrl+0即可输入NULL值。 二、如何在sql语句中判断为NULL的时间字段 假设表为:...
SQLServer时间处理,主要是数据里通过SQL语句对时间的操作
将mysql数据库转换为sql server的数据库,或者将sql server数据库转换为mysql的数据库,在nt环境下很多时候都会用到。使用mysql odbc后就比较好办,可以使用sql server的管理工具,也可以使用mysql的管理工具,更可以...
sql server 事务处理范例,包括测试程序,测试表结构,可以直接执行显示运行结果.
SQLserver存储过程异常处理
SqlServer日期处理函数的各种应用方式与例子
sqlserver数据库死锁的处理过程,内有说明,测试过,比较好用。
SQL Server绿色版只保留 GSQL.EXE 版权,其他附带文件版权归美国微软公司所有,本软件以技术研究为宗旨,请在下载本软件后24小时内删除附带的 SQL Server 文件或替换为您购买的正版 SQLServer文件, 否则后果自负。...
中文安装包,光盘镜像文件,用压缩软件直接打开安装即可
SQL Server查询中的特殊字符处理(C#代码)
让软件企业在发布基于SQLServer2000数据库软件的时候,只要把软件打包进入安装包而不需要再单独安装数据库,也不需要另外进行数据库的设置,就如同使用ACCESS数据库一样简单,但却是SQLServer2000这样大中型数据库的...
[Microsoft Press] Microsoft SQL Server 2012 技术内幕 (英文版) [Microsoft Press] Microsoft SQL Server 2012 Internals (E-Book) ☆ 图书概要:☆ Dive deep inside the architecture of SQL Server 2012 ...
C#操作SQL Server中的Image类型数据 C#操作SQL Server中的Image类型数据 C#操作SQL Server中的Image类型数据 C#操作SQL Server中的Image类型数据 详细介绍请参考: ...
为满足向后兼容的需要,我们提供SQL Server CE 2.0复制软件。 请查阅安装互联工具的设置说明。 1. Microsoft SQL Server 2005移动版服务器工具(sqlce30setupxx.msi)在IIS 箱中安装SQL Server Mobile复制组件。 这个...
SqlServer连接工具SqlServer连接工具SqlServer连接工具
讲述SQLServer从基础到高级应用。(chm无法显示内容时需在属性中“解除锁定”)
sqlserver自动生成sql语句工具sqlserver转oracle
采用c#, 在sql server 中调用des 加密, 解密字符串. 可自定义key
解决sqlserver,float去除后面的零超过四位会转换成特殊的编码格式的问题,无限制去除后面多余的0