sql中case的使用方法
case函数具有两种格式,分别是以下两种:
①: case简单函数case 列名 when 值1 then 结果1 when 值2 then 结果2 else 其他结果 end②:case搜索函数
case when 条件1 then 值1 when 条件2 then 值2 else 其他结果 end注:case只返回第一个满足条件的值。
2.示例:
①case简单函数示例:
SELECT
compid,
(case checkmethod
when 'A' then 1
when 'B' then 2
when 'C' then 3
else 0 end) as flag
from
bz_check_main
结果图示:
②case搜索函数示例:
SELECT
compid,
IFNULL(SUM(CASE
WHEN (checkmethod = 'A') THEN 1
END),
0) AS xx1,
IFNULL(SUM(CASE
WHEN (checkmethod = 'B') THEN 2
END),
0) AS xx2,
IFNULL(SUM(CASE
WHEN (checkmethod = 'B') THEN 3
END),
0) AS xx3
FROM
bz_check_main
GROUP BY compid;
小记:此列中进行了行列置换,统计A、B、C、的数量,并对空值以0做替换;ifnull函数是MySql中的函数。
结果图示:
本文详细介绍了 SQL 中 case 函数的两种格式及其应用场景。一种是简单的 case 列名 when 结构,另一种是 case 搜索 when 条件 then 值的形式。通过具体的示例展示了如何利用 case 函数进行条件判断和数值转换,以及如何结合 ifnull 函数处理空值情况。
159

被折叠的 条评论
为什么被折叠?



