SQL nvl/nvl2 -针对空值的判断计算

SQL  nvl/nvl2 -针对空值的判断计算

1、nvl 函数 

1
nvl(expr1, expr2)

如果 expr1 为 NULL,则返回 expr2;否则返回 expr1。 此函数是 coalesce(expr1, expr2) 的同义函数。
参数

  • expr1:一个任意类型的表达式。
  • expr2:一个与 expr1 共享最小共同类型的表达式。

返回:结果类型是参数类型中的最不常见类型。

示例

1
2
3
SELECT nvl(NULL, 20230907);  -- 20230907
SELECT nvl(NULL, '滔Roy');  -- 滔Roy
SELECT nvl('滔Roy', 'Delphi');  -- 滔Roy

2、nvl2 函数

1
nvl2(expr1, expr2, expr3)

如果 expr1 不是 NULL,则返回 expr2,否则返回 expr3。 此函数是 CASE WHEN expr1 IS NOT NULL expr2 ELSE expr3 END 的同义函数。

参数

  • expr1:一个任意类型的表达式。
  • expr2:一个任意类型的表达式。
  • expr3:一个与 expr2 共享最小共同类型的表达式。

返回:结果是 expr2 和 expr3 的最不常见类型。

示例

1
2
SELECT nvl2(NULL, 1, 0);  -- 0
SELECT nvl2('滔Roy', 1, 0); --1

  

注意:以上函数 MS 数据库似乎不支持, 支持Oracle

 

 

创建时间:2023.09.07  更新时间:

posted on   滔Roy  阅读(146)  评论(0编辑  收藏  举报

相关博文:
阅读排行:
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
历史上的今天:
2020-09-07 WinCMD CMDKEY - 创建,显示和删除保存Windows凭证的用户名和密码。

导航

点击右上角即可分享
微信分享提示