sqlite3 用什么替代oracle的nvl函数?

avatar
avatar
雪山凌狐
488
文章
26
评论
2020年1月19日19:41:59 评论 3,532 566字阅读1分53秒

nvl函数是什么,是oracle数据库里面一个判断是否取出的内容为空值的函数,使用方法为:

nvl(a,b)

其中a为要取出的表列,b为如果a为null空值的默认值。

但我发现sqlite3并没有这个命令,那么sqlite3数据库用什么函数来替代它呢?

在sqlite3中,可以使用ifnull或IFNULL来替代,亲测大小写都行。

IFNULL(a,b)

其中a,b的解释跟前面是一样的。

但有些数据库语言不是IFNULL哦,而是ISNULL,注意有一个字母不同,你可以分别都试试看。

还有一个各个数据库都比较通用的强大命令,如果你记不住前面的区别,用这个函数就行(不过单词确实不那么好记,努力记忆吧!)(测了一下好像大写的命令没这个命令,只有小写的):

coalesce(expression,value1[,value2,...valueN])

它的强大之处在于,不一定只能填入两个参数,首先判断expression表达式(也可以是某一列)是否能取到非NULL值,如果为取得到就返回expression的值,如果为NULL,则往下一个个判断第一个非NULL值返回。如果全部为NULL,返回NULL。

这个函数当然sqlite3也是支持的,很不错,快来试试吧!

 

 

感谢大家的收看,我们下期再见!

如果你觉得内容不错的话,欢迎点赞,评论和分享哟~
avatar
Microsoft VS Code安装和汉化指南 精彩文章

Microsoft VS Code安装和汉化指南

越来越多的人开始使用vscode来做编程项目了,微软出的这款免费开源的编辑器也越来越吸引广大的开发者。最近我也蛮喜欢这款编辑器的,都把sublime扔到一边,开始用它来做一些项目了。 关于它我就不做过...
使用命令行升级Git版本 windows 精彩文章

使用命令行升级Git版本 windows

不想先卸载git,直接升级git?通过命令行即可完成,但是最好你要能有梯子,否则可能会下载失败或者非常慢。 这里介绍结合梯子的升级方法。 升级请在Git Bash中执行命令。   检查git...

发表评论