(1)枚举这个字段的各个可能的值,对枚举到的每一个具体的值单独作出对应的处理
举例说明
SELECT
CASE a.AFTER_QUALITY
WHEN '0' THEN
'过免维期'
WHEN '1' THEN
'未过免维期'
ELSE
'错误数据'
END AS AFTER_QUALITY
FROM
t_maintain_log a
数据库表内容:
运行结果:
(2)判断该字段的范围
SELECT
d.[单项编号] 单项编号,
c.[单项财务收入],
e.[单项合同金额],
CASE
WHEN c.单项财务收入 is NULL or c.单项财务收入 <0 THEN
'无收入'
ELSE
'有收入'
END AS 有无收入,
CASE
WHEN e.单项合同金额 IS NULL OR e.单项合同金额 < 0 THEN
'无合同'
ELSE
'有合同'
END AS 有无合同
FROM
[BI_单项_FOR_ANALYSE] d
LEFT JOIN (
SELECT
sr.[单项编号],
SUM (sr.[单项财务收入]) 单项财务收入
FROM
[BI_单项财务收入_FOR_ANALYSE] AS sr
GROUP BY
sr.[单项编号]
) c ON d.[单项编号] = c.[单项编号]
LEFT JOIN (
SELECT
mx.[单项编号],
SUM (mx.[单项合同金额]) 单项合同金额
FROM
BI_合同明细_FOR_ANALYSE AS mx
GROUP BY
mx.[单项编号]
) e ON d.[单项编号] = e.[单项编号];
本文深入探讨了SQL查询中的枚举处理、条件判断及复杂字段分析,通过具体实例展示了如何高效地处理数据库表中的数据,包括枚举值转换、范围判断等关键操作,旨在提升数据库操作效率和数据理解能力。
8500

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



