博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
关于sql当中的isnull和ifnull的区别
阅读量:4984 次
发布时间:2019-06-12

本文共 506 字,大约阅读时间需要 1 分钟。

今天写sql突然看到了遇到两列值相加的情况,但是在一列值当中有为空的情况,然后两列值相加就变成了空值。

情况如下:

这里一直说参数有问题,于是我们各种的改,还是没有效果。

然后就试着找答案,然后发现了除了 这个之外,mysql还有一种判断不为空的情况IFNULL。他才是正真的判断如果不为空的情况下将其设置一个默认值

具体效果如下:

 

 问题得到解决,将列为空的置为0.执行累加操作。

这里顺便说一下,我们操作的hive数据库,在hive数据库当中我们同样需要对数据是否是null值进行判断。有时候也需要对数据进行设置默认值。这个时候我们采用

NVL函数,或者采用COALESCE()函数进行对值进行操作。具体的效果如下:

 

 同样的使用NVL函数的效果是一样的。

同时我们要注意在将数据导入到hive表的时候我们对于空值和null值的处理方式,查询条件也不同。在这里我们如果一个字段是null的查询条件就是where field is NULL

如果一个字段是空值我需要将其写成,where field =''

效果如下;

 

转载于:https://www.cnblogs.com/gxgd/p/9407033.html

你可能感兴趣的文章
jmeter --自动化badboy脚本开发技术
查看>>
Linux驱动:LCD驱动测试
查看>>
Mark Down 尝试
查看>>
第三节:使用Log4net和过滤器记录异常信息,返回异常给前端
查看>>
fedora的选择
查看>>
AlphaPose论文笔记《RMPE: Regional Multi-person Pose Estimation》
查看>>
模糊查询和聚合函数
查看>>
[批处理]批量将文件名更名为其上级目录名
查看>>
如何查找ORACLE中的跟踪文件
查看>>
SQL Server将一列的多行内容拼接成一行
查看>>
Spring Controller RequestMapping
查看>>
socket
查看>>
小程序 跳转问题 (来源见注明)
查看>>
JBPM4入门——9.自动节点单线执行
查看>>
//停止关联的进程
查看>>
SQL 生成公曆和農曆對照數據,公曆查找農曆和農曆查找公曆函數
查看>>
为何场效应管要用UGD与UGS(off)来比较判断夹断情况?
查看>>
.pem证书转xml格式字符串(.net)
查看>>
js构建ui的统一异常处理方案(二)
查看>>
三线程连续打印ABC
查看>>