SQL中的 CASE WHEN

前言

SQL 中的 CASE WHEN 是标准 SQL 中用于实现条件判断的表达式,本质上相当于编程语言中的 if-else if-else 或 switch-case 结构

CASE WHEN示例

语法说明

sql 复制代码
CASE 字段或表达式 
   WHEN 预期值1 THEN 结果1 
   WHEN 预期值2 THEN 结果2 
   [ELSE 默认结果] 
END

sql示例

sql 复制代码
SELECT u."name", s.device_name, l.key_name, CASE l.lock_key_type WHEN 'FINGER' THEN '指纹' WHEN 'SECRET' THEN '密码' WHEN 'CARD' THEN '卡片' ELSE '未知类型' -- 兜底处理,防止出现未匹配的值返回 NULL END AS lock_key_type_name FROM lock_key_v3 l INNER JOIN lock_key_device_rel r ON l.id = r.lock_key_id INNER JOIN sys_device s ON s.id = r.device_id INNER JOIN sys_user u ON u.id = l.user_id WHERE l.tenant_id = 2031967244505841665 AND l.dr = 0 AND l.authorization_dimension = 'MANAGE_KEY' AND s.org_id = 2045367611104952322;

总结

使用SQL中的 CASE WHEN,可以实现条件判断

相关推荐
一勺思维1 小时前
做完半年 AI Agent 应用,我踩过的 5 个坑,全是"看起来解决了"的那种
后端
用户204937554951 小时前
Rust推理库编译失败排查:从Cargo到输入法集成
后端·程序员
yunwei371 小时前
eBPF 开发者教程: 简单的 XDP 负载均衡器
linux·后端·性能优化
倔强的石头_1 小时前
慢接口定位实战:从应用日志一路追到 SQL 执行计划
数据库
IT_陈寒1 小时前
Python的列表推导式差点让我加班到凌晨
前端·人工智能·后端
掘金者阿豪1 小时前
MySQL 迁移金仓,SQL 能正常执行,为什么查询结果却不一样?
后端
SelectDB1 小时前
Doris 替换 ClickHouse:部署核查命令、常见问题排查与适配说明
大数据·数据库·数据分析
机器之心1 小时前
突发!GPT-6 Sol与Claude Opus 5.5同日开打,谁是「性价比之王」
前端·人工智能·后端
用户34232323763171 小时前
Ternary-Bonsai-2-27B(PTQ1_0) 在 RTX 4090 上的部署与调优实录
后端