oracle decode函数怎么用-Oracle

Oracle DECODE 函数用法

Oracle DECODE 函数是一种用于在指定条件下返回不同值的条件语句。语法如下:

DECODE(expression, value1, result1, value2, result2, ..., default_result)
登录后复制

使用方法:

DECODE 函数有两个必需的参数:

  • expression:要评估的表达式
  • value1:要比较的第一个值

随后的参数按照成对出现,第一个参数是值,第二个参数是当 expression 等于该值时返回的结果。

如果 expression 与任何给定的值都不匹配,则返回 default_result。

示例:

假设有一张包含以下列的 "T恤" 表:

尺寸 颜色 数量
S 20
M 绿 30
L 40

要查询红色 T 恤的库存,可以使用以下 DECODE 函数:

SELECT SUM(数量)
FROM T恤
WHERE DECODE(颜色, '红', 数量, NULL) IS NOT NULL;
登录后复制

在这个示例中,expression 是 "颜色" 列,value1 是 '红',result1 是 "数量" 列,default_result 为 NULL。函数将 "颜色" 与 '红' 进行比较,并返回 "数量" 值。因为没有其他值匹配,所以 NULL 值会被忽略。结果将是红色 T 恤的库存数量。

其他用法:

DECODE 函数还可以用于:

  • 转换值,例如将数字转换为字符串
  • 根据条件设置标志
  • 替换缺失值
  • 嵌套多个条件语句

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。