MySQL----case的用法

MySQLCASE表达式用法详解😊

CASE表达式是MySQL中非常强大的条件判断工具,它允许我们在SQL查询中进行类似编程语言中的if-else逻辑判断。下面让我们一起来学习CASE的几种常见用法吧!💡

1.简单CASE表达式🎯

简单CASE表达式将一个值与一组简单值进行比较:

```sql
SELECT
product_name,
CASEcategory_id
WHEN1THEN'电子产品'
WHEN2THEN'家居用品'
WHEN3THEN'食品'
ELSE'其他类别'
ENDAScategory_name
FROMproducts;
```

2.搜索CASE表达式🔍

搜索CASE表达式可以处理更复杂的条件判断:

```sql
SELECT
student_name,
CASE
WHENscore>=90THEN'优秀'
WHENscore>=80THEN'良好'
WHENscore>=60THEN'及格'
ELSE'不及格'
ENDASgrade
FROMstudents;
```

3.在UPDATE语句中使用CASE✏️

我们可以用CASE表达式来根据条件更新不同的值:

```sql
UPDATEemployees
SETsalary=CASE
WHENperformance='A'THENsalary1.2
WHENperformance='B'THENsalary1.1
WHENperformance='C'THENsalary1.05
ELSEsalary
END;
```

4.在ORDERBY中使用CASE🔄

CASE表达式可以让我们实现自定义排序:

```sql
SELECTFROMproducts
ORDERBY
CASE
WHENstock_quantity<=10THEN0
WHENstock_quantity<=50THEN1
ELSE2
END;
```

5.在聚合函数中使用CASE📊

结合聚合函数可以实现条件统计:

```sql
SELECT
department_id,
COUNT()AStotal_employees,
SUM(CASEWHENgender='M'THEN1ELSE0END)ASmale_count,
SUM(CASEWHENgender='F'THEN1ELSE0END)ASfemale_count
FROMemployees
GROUPBYdepartment_id;
```

总结🎉

CASE表达式是SQL中非常灵活的工具,掌握它可以让我们写出更强大、更简洁的查询语句。无论是简单的值匹配还是复杂的条件判断,CASE都能胜任!🌟

记住:简单CASE适合等值比较,搜索CASE适合范围判断,两者结合使用可以解决大多数业务场景的需求。快去试试吧!🚀

相关推荐
程序员爱钓鱼8 小时前
Rust 切片 Slice 详解:安全访问连续数据
前端·后端·rust
要开心吖ZSH9 小时前
一文搞懂:JDK 21 虚拟线程 vs N种异步方案,到底该怎么选?
java·数据库·jdk·虚拟线程
guodingdingh14 小时前
软件开发工作问题总结0718
java·开发语言·数据库
咖啡八杯15 小时前
GoF设计模式——解释器模式
java·后端·spring·设计模式
优橙教育15 小时前
5G网优培训 vs Java开发:转行选哪个?
java·开发语言·5g
掘金码甲哥15 小时前
这块终端神器, 必须吹爆!
后端
糖果店的幽灵16 小时前
【DeepAgents 从入门到精通】Context Management 上下文管理
java·人工智能·后端·spring·中间件·langgraph·deepagents
Csvn16 小时前
📊 SQL 入门 Day 8:集合操作 — 用 SQL 做数学里的"并交差"
后端·sql
腻害兔17 小时前
【若依项目-产品经理视角】RuoYi-Vue-Pro 源码拆解:字典、短信、邮件、通知——后台系统的“基础设施四件套“!
java·前端·vue.js·产品经理·ai编程
碎光拾影18 小时前
ARM交叉工具链各工具作用及IMX6ULL平台LED+蜂鸣器裸机程序实现
java·开发语言·数据库