文档章节

数据库空值和NULL处理

JerrySimple
 JerrySimple
发布于 2017/09/04 15:04
字数 160
阅读 19
收藏 1

用 ISNULL(), NVL(), IFNULL() and COALESCE() 函数替换空值

MySQL中这样来写:

select IFNULL(exp1,exp2)
select IFNULL(sum(data),0)//如果sum(data)为NULL,则返回0,否则返回本身

如果exp1为NULL,则返回exp2

SQLSERVER中这样写:

select ISNULL(sum(data),0)

在ORACLE中这样写:

select NVL(sum(data),0)

对于所有数据库适用的方法这样写:

select COALESCE(sum(data),0)

COALESCE()用法:

COALESCE(value,...)  

返回第一个不是null的值,如果参数列表全是null,则返回null


SELECT COALESCE(NULL,1);
        -> 1
SELECT COALESCE(NULL,NULL,1,3) 

        ->1

SELECT COALESCE(NULL,NULL,NULL);
        -> NULL

© 著作权归作者所有

共有 人打赏支持
JerrySimple
粉丝 5
博文 56
码字总数 35716
作品 0
杭州
后端工程师
私信 提问
mysql的空值与NULL的区别

MySQL数据库是一个基于结构化数据的开源数据库。SQL语句是MySQL数据库中核心语言。不过在MySQL数据库中执行SQL语句,需要小心两个陷阱。   陷阱一:空值不一定为空   空值是一个比较特殊...

雍雍_yoyo
2016/04/26
48
0
数据库中罪恶的NULL

数据库中罪恶的NULL 摘要:1.Null表示Unknow; 2.聚合运算; 3.性能; 4.NO NULL! 1.Null表示Unknow: SQL基于三值逻辑true、false、unknow;Null与任何类型的值进行比较(=、>、>=、<、<=)或运算(...

吞吞吐吐的
2017/10/24
0
0
MySQL · 答疑解惑 · MySQL Sort 分页

背景 6.5号,小编在 Aliyun 的论坛中发现一位开发者提的一个问题,说 RDS 发现了一个超级大BUG,吓的小编一身冷汗 = =!! 赶紧来看看,背景是一个RDS用户创建了一张表,在一个都是NULL值的非索...

阿里云RDS-数据库内核组
2015/06/05
0
0
求一条关于对空值处理的sql语句

这是C# winform 的一个“修改”操作 窗口中10几个textbox,sql语句简化后模式大致是: update test1 set t1='"+ a.Text +"',t2='"+ b.Text +"',t3='"+ c.Text +"' where t_id=1 但是从textb...

t_kong
2013/07/31
346
1
HAWQ取代传统数仓实践(六)——增加列

业务的扩展或变化是不可避免的,尤其像互联网行业,需求变更已经成为常态,唯一不变的就是变化本身,其中最常碰到的扩展是给一个已经存在的表曾加列。 以销售订单为例,假设因为业务需要,在...

wzy0623
2017/05/23
0
0

没有更多内容

加载失败,请刷新页面

加载更多

码云项目100,水一发

简单回顾一下: 早期构想最多的,是希望能将PHP一些类和编码分区做得更细,所以很多尝试。但不得不说,PHP的功能过于单一,是的,也许写C/C++扩展,可以解决问题,那我为什么不用C#或者Golan...

曾建凯
20分钟前
1
0
Spring应用学习——AOP

1. AOP 1. AOP:即面向切面编程,采用横向抽取机制,取代了传统的继承体系的重复代码问题,如下图所示,性能监控、日志记录等代码围绕业务逻辑代码,而这部分代码是一个高度重复的代码,也就...

江左煤郎
今天
4
0
eclipse的版本

Eclipse各版本代号一览表 Eclipse的设计思想是:一切皆插件。Eclipse核心很小,其它所有功能都以插件的形式附加于Eclipse核心之上。 Eclipse基本内核包括:图形API(SWT/Jface),Java开发环...

mdoo
今天
3
0
SpringBoot源码:启动过程分析(一)

本文主要分析 SpringBoot 的启动过程。 SpringBoot的版本为:2.1.0 release,最新版本。 一.时序图 还是老套路,先把分析过程的时序图摆出来:时序图-SpringBoot2.10启动分析 二.源码分析 首...

Jacktanger
今天
4
0
小白带你认识netty(二)之netty服务端启动(上)

上一章 中的标准netty启动代码中,ServerBootstrap到底是如何启动的呢?这一章我们来瞅下。 server.group(bossGroup, workGroup);server.channel(NioServerSocketChannel.class).optio...

天空小小
今天
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部