NVL函数,IFNULL函数和ISNULL函数有什么区别?
这三个功能以相同的方式工作。这些函数用于将NULL值替换为另一个值。Oracle开发人员使用NVL函数,MySQL开发人员使用IFNULL函数,而SQL Server开发人员使用ISNULL函数。
假设列中的某些值是NULL。
如果在下面的语句中运行,则结果为NULL
SELECT col1 * (col2 + col3) FROM Table1
假设col3中的任何值为NULL,那么正如我所说的,您的结果将为NULL。
为了克服这个问题,我们使用NVL()函数,IFNULL()函数,ISNULL()函数。
甲骨文:
SELECT col1 * (col2 + NVL(col3,0)) FROM Table1
MySQL:
SELECT col1 * (col2 + IFNULL(col3,0)) FROM Table1
另外,您可以使用COALESCE()函数
SELECT col1 * (col2 + COALESCE(col3,0)) FROM Table1
SQL Server:
SELECT col1 * (col2 + ISNULL(col3,0)) FROM Table1
个人简介
我是一名测试兼开发工程师,目前25K,目前做的是无人驾驶,欢迎和大家一起交流开发测试技术,一起高薪就业,我们还有一起打妖怪的群哦,还有面试题小程序哦!