oracle中case的用法-Oracle

Oracle 中 CASE 语句的用法

CASE 语句是一种用于在 Oracle 中进行条件评估的强大工具。它允许您根据给定的条件执行不同的操作。

语法:

CASE
  WHEN condition1 THEN result1
  WHEN condition2 THEN result2
  ...
  ELSE default_result
END
登录后复制

用法:

CASE 语句的用法如下:

  • 条件 (WHEN):指定要评估的条件。
  • 结果 (THEN):如果条件为 true,则执行的操作。
  • 默认结果 (ELSE):如果所有条件都为 false,则执行的操作。它是可选的。

示例:

以下示例使用 CASE 语句根据学生的成绩确定等级:

SELECT
  name,
  CASE
    WHEN score >= 90 THEN 'A'
    WHEN score >= 80 THEN 'B'
    WHEN score >= 70 THEN 'C'
    ELSE 'F'
  END AS grade
FROM students;
登录后复制

CASE 表达式:

CASE 语句还可以用作表达式,返回根据条件评估的结果:

-- 检查一个数字是否为偶数或奇数
CASE
  WHEN num % 2 = 0 THEN 'Even'
  ELSE 'Odd'
END
登录后复制

嵌套 CASE:

CASE 语句可以嵌套以处理更复杂的条件:

SELECT
  CASE
    WHEN status = 'Active' THEN
      CASE
        WHEN balance >= 10000 THEN 'High'
        ELSE 'Low'
      END
    ELSE 'Inactive'
  END AS account_status
FROM accounts;
登录后复制

优点:

使用 CASE 语句有以下优点:

  • 简化条件评估
  • 提高代码的可读性
  • 减少代码重复

发表评论

访客

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