mssql sqlserver避免sql脚本中出现除零错误的方法分享

摘自:http://www.maomao365.com/?p=6612

摘要:
下文介绍sql server中,sql脚本避免出现除零错误的方法分享


在各种业务系统开发中,通常会遇到除零的错误,下文分享了两种处理方法:
方法1: case when end

declare @a int ---分子
declare @b int ---分母
select  case  when @b=0 then NULL else @a/@b end  as [a除以b]


方法2:nullif
nullif(表达式A,表达式B)
—-如果表达式A不等于表达式B,则返回表达式A
—-反之返回NULL

declare @a int ---分子
declare @b int ---分母
select @a/nullif(@b,0) as [a除以b]


原文地址:https://www.cnblogs.com/lairui1232000/p/9235806.html

时间: 2024-10-13 21:30:17

mssql sqlserver避免sql脚本中出现除零错误的方法分享的相关文章

mssql sqlserver 使用sql脚本 清空所有数据库表数据的方法分享

摘要: 下文讲述清空数据库中所有表信息的方法分享,如下所示: 实验环境:sql server 2008 实现思路: 1.禁用所有约束,外键 2.禁用所有触发器 3.删除表数据 4.开启触发器 5.开启约束 CREATE PROCEDURE proc_deleteDateSql /* 生成清除数据库表数据的脚本方法分享 */ AS EXEC sp_MSForEachTable 'ALTER TABLE ? NOCHECK CONSTRAINT ALL' EXEC sp_MSForEachTable

mssql sqlserver 使用sql脚本输出交替不同的背景色的html信息的方法分享

转自:http://www.maomao365.com/?p=6679 摘要: 下文将分享使用sql脚本输出交替变换的不同背景颜色的sql脚本的方法分享,如下所示: 实验环境:sqlserver 2008 R2 例: 下文 首先采用 over() row_number 函数生成的行编号, 然后对每行进行颜色变化操作,生成不同的背景色,如下所示: create table test(keyId int,info varchar(30)) go insert into test(keyId,info

mssql sqlserver 使用sql脚本实现相邻两条数据相减的方法分享

摘要: 下文讲述使用sql脚本实现相邻两条数据相减的方法,如下所示: 实验环境:sql server 2008 R2 实现思路: 1.使用cte表达式,对当前表进行重新编号 2.使用左连接对 表达式 生成的临时表进行错位连接,并对生成的新纪录中两列进行相减 create table [maomao365] (sort varchar(30),qty int); go ----生成基础数据 insert into [maomao365](sort, qty)values ('maomaoA',10

mssql sqlserver 对不同群组对象进行聚合计算的方法分享

摘要: 下文讲述通过一条sql语句,采用over关键字同时对不同类型进行分组的方法,如下所示: 实验环境:sql server 2008 R2 当有一张明细表,我们需同时按照不同的规则,计算平均.计数.求和等聚合计算时,此时我们可以使用over子句对数据进行操作.例: 我们需获取一个学生成绩的 总平均分 各科平均分 学生单科成绩同平均分的差异,此时我们可以多次使用over子句,得出我们想要的结果, select [课程名], [姓名], [成绩], AVG([成绩]) over () as [总

在SQL脚本中进行文件的读写

在SQL脚本中进行文件的读写 首先需要开启xp_cmdshell [sql] sp_configure 'show advanced options',1 reconfigure go sp_configure 'xp_cmdshell',1 reconfigure go 然后再SQL中插入: [sql] Declare @Path varchar(5000) Set @Path='E:\Test.txt' declare @Command varchar(5000) set @Command=

Shell脚本中判断输入参数个数的方法投稿:junjie 字体:[增加 减小] 类型:转载

Shell脚本中判断输入参数个数的方法 投稿:junjie 字体:[增加 减小] 类型:转载 这篇文章主要介绍了Shell脚本中判断输入参数个数的方法,使用内置变量$#即可实现判断输入了多少个参数,需要的朋友可以参考下 $#代表了命令行的参数数量,可以看以下实例: 复制代码 代码如下: if [ $# != 1 ] ; then echo "USAGE: $0 TABNAME" echo " e.g.: $0 CDR_CALL_20040701" exit 1; f

bash脚本中出现[[:not found错误的解决方法

bash脚本中出现[[:not found错误的解决方法--bash脚本总结1 今天在写脚本的时候,发生了一个奇怪的问题:在脚本中使用[[的时候报错“[[: not found”.遇到问题自然是解决问题. 1. 使用的bash版本太低? bash --version查看bash版本信息如下 [email protected]:~$bash --version GNU bash, version 3.2.39(1)-release (i486-pc-linux-gnu) Copyright (C)

去掉PowerDesigner生成SQL脚本中字段名带的引号

使用PowerDesigner生成数据库建表SQL脚本时,尤其是Oracle数据库时,表名一般会带引号.其实加引号是PL/SQL的规范,数据库会严格按照""中的名称建表,如果没有"",会按照ORACLE默认的设置建表(DBASTUDIO里面),默认是全部大写,这样,在ORACLE数据库里的字段就如"Column_1".如果你把引号去掉,ORACLE自动默认为全部大写,即"COLUMN_1",所以这段SQL在PL/SQL中执行的

MSSQL之二 Sql Server中管理库与表

作为数据库开发人员,你负责创建和管理数据库和表.当创建表的时候,维护数据的完整性对你是很重要的.为确保表中的数据是准确的,一致的和可靠的,SQL Server提供了各种你可以应用到表上以增强数据完整性的检查. SQL Server包含各种系统数据库.本章介绍不同类型的系统数据库并且解释如何管理用户定义的数据库和管理用户自定义表. 重点 ?      管理数据库 ?      管理表 ?      SQL Server 2008中的数据类型 预习功课 ?        创建数据库 ?