两种语法模式:
第一种:只有一个分支
CASE
WHEN 条件 THEN 结果1
ELSE 结果2
END
第二种:支持多种分支
CASE 表达式1
WHEN 表达式2 THEN 结果1
ELSE 结果2
END
上面的WHEN可以重复多次
简单示例:
第一种
(1)
select
case when 1 = 1 then 1 else 2 end;
(2)
select id,className,(case when sex='男' then numCount else 0 end) as num1,
(case when sex='女' then numCount else 0 end) as num2 from classes
numCount 为班级人数字段
(3)
select f_dpId, f_sptId, sum(case when f_warnState=1 then 1 else 0 end) as f_num1,
sum(case when f_warnState=2 then 1 else 0 end) as f_num2,
sum(case when f_warnState=3 then 1 else 0 end) as f_num3,
sum(case when f_warnState=4 then 1 else 0 end) as f_num4
from Test01
where f_valid=1
group by f_dpId,f_sptId
(4)
select case 2
when 1 then 1
when 2 then 2
when 3 then 3
else 4
end;
第二种
(5)
获取月份的名字
SELECT ORDNO,CUSNO,
CASE MONTH(SHIPDATE)
WHEN '01' THEN 'Jan'
WHEN '02' THEN 'Feb'
WHEN '03' THEN 'Mar'
WHEN '04' THEN 'Apr'
WHEN '05' THEN 'May'
WHEN '06' THEN 'Jun'
WHEN '07' THEN 'Jul'
WHEN '08' THEN 'Aug'
WHEN '09' THEN 'Sep'
WHEN '10' THEN 'Oct'
WHEN '11' THEN 'Nov'
WHEN '12' THEN 'Dec'
END
FROM FILE
=================================================================
CASE很好用,不仅SELECT可以用,UPATE里面也蛮灵
UPDATE properities
SET taxrate=
CASE
WHEN area<10000 THEN 0.05
WHEN area<20000 THEN 0.07
ELSE 0.09
END
分享到:
相关推荐
本文详细介绍了 `CASE WHEN` 和 `SUM CASE WHEN` 的基本用法以及字段拼接的技术要点。`CASE WHEN` 提供了灵活的条件判断机制,而 `SUM CASE WHEN` 则使得对数据进行条件性聚合变得更加简单。结合字符串拼接功能,...
WHERE salary > (CASE WHEN AVG(salary) IS NOT NULL THEN AVG(salary) ELSE 0 END); ``` 在这个例子中,`CASE WHEN`语句检查平均薪资是否为`NULL`,如果不是,则使用平均薪资作为比较值;如果是`NULL`,则使用0。 ...
Oracle CASE WHEN 多条件语句详解 CASE WHEN 语句是 SQL 中的一种条件语句,用于实现多个条件的判断和执行。它可以用来代替 IF 语句和 SWITCH 语句,在 Oracle 数据库中尤其常用。 CASE WHEN 语句的基本语法是: `...
### SQL数据库转Access SQL语句改写:Case When Then When Then Else End #### 知识点一:SQL CASE WHEN THEN 结构与Access IIF及SWITCH函数对比 在进行SQL到Access SQL的转换过程中,一个重要的知识点是了解如何...
本文将详细介绍如何在MySQL中使用`CASE WHEN`语句,并通过具体的例子来展示它的应用。 #### 二、基础知识介绍 1. **基本语法**: - CASE语句有两种形式: - 简单CASE表达式: ```sql CASE value WHEN [compare-...
2. **默认值**:`ELSE` 子句是可选的,但如果所有 `WHEN` 条件均未被满足,则 `CASE` 表达式将返回 `NULL` 值或 `ELSE` 后面定义的默认值。 3. **结束标识**:`CASE` 表达式必须以 `END` 关键字结束。 4. **别名使用...
在数据库管理和SQL编程中,`DECODE`函数和`CASE WHEN`语句是两种非常重要的逻辑判断工具,它们常用于处理条件分支和数据转换。在这篇文章中,我们将深入探讨这两种方法的用途、区别以及如何巧妙地运用它们。 首先,...
在SQL查询中,`CASE WHEN`、`EXISTS`、`NOT EXISTS`以及`IN`和`NOT IN`是常用的操作符,它们用于处理复杂的条件判断和数据筛选。这些概念对于理解和编写高效的SQL语句至关重要,尤其是在数据分析和数据库管理中。 `...
在SQL语言中,`CASE WHEN THEN ELSE END`结构是一种强大的条件判断工具,它允许你在查询中根据特定条件执行不同的逻辑。这个结构可以在`SELECT`、`WHERE`、`HAVING`、`UPDATE`和`INSERT`等语句中使用,以实现复杂的...
1. CASE WHEN 表达式有两种形式 代码如下:–简单Case函数 CASE sex WHEN ‘1’ THEN ‘男’ WHEN ‘2’ THEN ‘女’ ELSE ‘其他’ END –Case搜索函数 CASEWHEN sex = ‘1’ THEN ‘男’ WHEN sex = ‘2’ ...
在SQL中,`CASE WHEN THEN` 语句用于条件判断,它可以用来转换或过滤数据,尤其是在聚合函数中,如 `COUNT()`, `SUM()`, `AVG()` 等。这个表达式允许我们在一个查询中根据不同的条件执行不同的操作。 在标题提到的...
### Oracle CASE 语句介绍及应用案例 #### 一、Oracle CASE 语句概述 在 Oracle 数据库中,CASE 语句是一种非常实用且灵活的条件判断表达式,它可以用于根据不同的条件返回不同的值。CASE 语句可以分为两种类型:...
MySQL中的`CASE WHEN`语句是一种条件判断表达式,它在SQL查询中起到了类似编程语言中`switch-case`或`if-else`的作用。这个功能强大的工具允许你在单个查询中根据不同的条件返回不同的结果值,非常适合数据分析和...
(CASE WHEN status = 0 THEN 1 ELSE 0 END) AS sort_order FROM table ORDER BY sort_order, status; ``` 这里,`sort_order`字段将确保值为0的记录先于非0记录,然后按照`status`字段进行内部排序。 ### 4. 总结...
在SQL Server中,CASE表达式是一种强大的工具,用于在查询中进行条件判断和逻辑操作。它的功能远不止创建新字段那么简单,而是可以在多个方面增强你的SQL查询能力。以下是对CASE关键字在SQL Server中不同用法的详细...
在MySQL数据库中,`CASE WHEN` 语句是一种强大的条件表达式,用于在查询中进行复杂的逻辑判断。本文将深入探讨如何使用`CASE WHEN`语句实现多条件查询,特别是针对给定的示例场景。 首先,让我们了解`CASE WHEN`的...
在SQL语言中,`CASE WHEN`语句是一个非常强大的逻辑判断工具,它可以替代C语言中的`switch case`结构,提供灵活的数据处理和条件判断。在SQL查询中,`CASE WHEN`常常用于根据不同的条件返回不同的值,或者在`SELECT`...
本案例主要关注如何使用VHDL中的`case when`语句来实现FPGA(Field-Programmable Gate Array)中的频率控制,特别是针对交通灯控制系统的应用。 交通灯控制系统是城市交通管理的关键部分,它通过精确的时间序列控制...