SQL条件判断怎么写_CASEWHEN逻辑分支完整示例【教学】

admin 百科 13
SQL中CASE WHEN是实现条件判断的核心语法,分简单CASE(直接匹配字段值)和搜索CASE(使用布尔表达式),后者更常用;按顺序逐条判断,遇首个TRUE即返回结果,THEN后类型宜一致,ELSE用于兜底防NULL。

SQL条件判断怎么写_CASEWHEN逻辑分支完整示例【教学】-第1张图片-佛山资讯网

SQL 中的 CASE WHEN 是实现条件判断的核心语法,类似编程语言里的 if-else,用于在查询中动态生成字段值、分类汇总、数据清洗等场景。它有两种写法:简单 CASE 和搜索 CASE,日常用得最多、最灵活的是后者(即带布尔表达式的 CASE WHEN ... THEN ... END)。

基础语法结构(搜索 CASE)

这是最常用、最推荐掌握的形式:

CASE
  WHEN 条件1 THEN 结果1
  WHEN 条件2 THEN 结果2
  WHEN 条件3 THEN 结果3
  ELSE 默认结果  -- 可选,不写则为 NULL
END AS 别名

登录后复制

注意:
• 条件按顺序从上到下逐条判断,**遇到第一个为 TRUE 的条件就返回对应结果,后续不再执行**;
• 所有 THEN 后的结果数据类型最好一致(如都是字符串或都是数字),否则数据库可能隐式转换或报错;
• ELSE 很重要——没匹配到任何 WHEN 时,它兜底,避免字段出现 NULL(尤其做统计或导出时)。

实际业务场景示例

假设有一张订单表 orders,含字段:order_idamountstatus('paid'/'shipped'/'cancelled')、created_at

标签: mysql go 编程语言 ai 数据清洗 状态码 聚合函数 隐式转换

发布评论 0条评论)

还木有评论哦,快来抢沙发吧~