oracle 中的 case 语句是用于条件评估的工具,其用法包括:指定要评估的条件 (when)。如果条件为真,则执行的操作 (then)。如果所有条件都为假,则执行默认操作 (else,可选)。
Oracle 中 CASE 语句的用法
CASE 语句是一种用于在 Oracle 中进行条件评估的强大工具。它允许您根据给定的条件执行不同的操作。
语法:
<code>CASE WHEN condition1 THEN result1 WHEN condition2 THEN result2 ... ELSE default_result END</code>
用法:
CASE 语句的用法如下:
- 条件 (WHEN):指定要评估的条件。
- 结果 (THEN):如果条件为 true,则执行的操作。
- 默认结果 (ELSE):如果所有条件都为 false,则执行的操作。它是可选的。
示例:
以下示例使用 CASE 语句根据学生的成绩确定等级:
<code class="sql">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;</code>
CASE 表达式:
CASE 语句还可以用作表达式,返回根据条件评估的结果:
<code>-- 检查一个数字是否为偶数或奇数 CASE WHEN num % 2 = 0 THEN 'Even' ELSE 'Odd' END</code>
嵌套 CASE:
CASE 语句可以嵌套以处理更复杂的条件:
<code class="sql">SELECT CASE WHEN status = 'Active' THEN CASE WHEN balance >= 10000 THEN 'High' ELSE 'Low' END ELSE 'Inactive' END AS account_status FROM accounts;</code>
优点:
使用 CASE 语句有以下优点:
- 简化条件评估
- 提高代码的可读性
- 减少代码重复