空值处理
coalesce( expression [ ,...n ] )返回其参数中第一个非空表达式。

Select coalesce(null,null,'1','2') //结果为 1

coalesce(expression1,...n) 与此 case函数等效:

CASE
WHEN (expression1 IS NOT NULL) THEN expression1
...
WHEN (expressionN IS NOT NULL) THEN expressionN
ELSE NULL
END

注意:
当第一个表达式为字符串且不能转化为整数时,若在后面的表达式中有整数,这样的语句是会报错的。
例如:

Select COALESCE('a',null,'1',2) //这是错误的

这相当于

select
CASE
WHEN ('a' IS NOT NULL) THEN 'a'
WHEN (2 IS NOT NULL) THEN 2
ELSE NULL
END //会出现错误,因为系统无法将a转换为相应的整数

但是

select
CASE
WHEN ('a' IS NOT NULL) THEN 'a'
WHEN (2 IS NOT NULL) THEN '2'
ELSE NULL
END //这是正确的

所以我们在使用coalesce函数时,应该相当小心。
isnull( check_expression , replacement_value ) 使用指定的替换值替换 NULL。
replacement_value 必须是可以隐式转换为 check_expresssion 类型的类型。
在表stu中

select isnull(ssex,'p') from stu //若ssex列中有NULL值,那么返回p

nullif( expression , expression ) 如果两个指定的表达式相等,则返回空值,否则 NULLIF 返回第一个 expression 的值。

select nullif(1,1) //结果为 NULL
select nullif(1,2) //结果为 1

转载于:https://www.cnblogs.com/jiajiayuan/archive/2011/06/17/2083758.html

SQL Server之其他函数——空值处理相关推荐

  1. SQL Server中自定义函数和游标应用的经典案例

    2019独角兽企业重金招聘Python工程师标准>>> SQL Server中自定义函数和游标应用的经典案例 转载于:https://my.oschina.net/zhddzr/bl ...

  2. SQL Server 2005 MD5函数

    原文:SQL Server 2005 MD5函数 在SQL Server 2005下自带的函数HashBytes() ,此函数是微软在SQL Server 2005中提供的,可以用来计算一个字符串的M ...

  3. Sql Server 2005 ROW_NUMBER 函数实现分页

    过去用SQL Server 2000分页的,大多都用到了临时表.SQL Server 2005 ROW_NUMBER 函数支持分页,性能据说也非常不错. Paging Records Using SQ ...

  4. php server自定义函数,php:SQL Server用户自定义的函数种类详解

    关于SQL Server用户自定义的函数,有标量函数.表值函数(内联表值函数.多语句表值函数)两种. 题外话,可能有部分朋友不知道SQL Serve用户自定义的函数应该是写在哪里,这里简单提示一下,在 ...

  5. oracle的date_add,SQL Server 中add函数到 oracle date add的操作

    SQL Server 中add函数到 oracle date add的操作 oracle date add minutes How does one add a day/hour/minute/sec ...

  6. sql server中datename函数的使用

     DATENAME(param,date); 参数说明 1.param是指定要返回日期部分的参数 日期部分 缩写 year yy, yyyy quarter qq, q month mm, m d ...

  7. SQL Server中替换函数stuff、replace的使用

    原文链接:SQL Server中替换函数STUFF.replace的使用 STUFF ( character_expression , start , length ,character_expres ...

  8. Oracle中有dateadd吗,SQL Server 中add函数到 oracle date add的操作

    SQL Server 中add函数到 oracle date add的操作 oracle date add minutes How does one add a day/hour/minute/sec ...

  9. SQL Server中COALESCE函数的用法

    在SQL Server中COALESCE函数,会返回其参数中第一个不为NULL的参数,效果如下: SELECT COALESCE(NULL,NULL,N'A',NULL,NULL) 结果: SELEC ...

最新文章

  1. Spring Aop实例之xml配置
  2. 成功解决ValueError: cannot assign without a target object
  3. IDE-Ecplise-代码注释 模版 编码规范 配色
  4. cepl进程 Linux,Ubuntu下NS2-2.33安装过程
  5. 互联网晚报 | 3月8日 星期二 |​ ​​沪指深V反弹,创业板指跌幅收窄至0.75%;腾讯低代码平台与微信开发者平台打通...
  6. 学术前沿 | Texar-PyTorch:在PyTorch里重现TensorFlow的最佳特性
  7. java基于jxl.jar包生成Excel文件到指定目录和服务器下载两种模式的使用方法
  8. [Xilinx FPGA] #2 Xilinx ISE Help Notes #1 -1.8.2019
  9. 【华为机试真题 JAVA】最大股票收益-100
  10. android wear 制作时钟界面,android wear开发之绘制表盘.doc
  11. WRF Output Fields描述
  12. ai俄罗斯方块java_俄罗斯方块 AI 算法讲解
  13. 奇迹服务器gs无响应,奇迹gs远程连接服务器
  14. 用for循环写520个我喜欢你
  15. php代码生成折现统计图
  16. c盘扩容提示簇被标记_垃圾文件正在吞噬你的C盘空间!用这四种方法,还你一个干净的C盘...
  17. 硅基光电子芯片:换道超车的核心技术
  18. 【科技杂谈】记录学习装重装系统的过程(非常规重装系统教学)
  19. Linux下的mount命令详解
  20. Ant内置任务之defaultexcludes

热门文章

  1. eclipse team 没有svn
  2. gitlab修改项目的url
  3. 英国脱欧但网络安全领域重视未减
  4. leetcode231
  5. golang rpc的两种调用方法
  6. Semaphore信号量
  7. 从CSDN的趣味题学PYTHON
  8. SQL Server自带备份整个数据库脚本工具
  9. 【译】Asp.Net Identity Cookies 格式化
  10. [20170728]oracle保留字.txt