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 语句有以下优点:
- 简化条件评估
- 提高代码的可读性
- 减少代码重复