当前位置:网站首页>mysql的case when如何用
mysql的case when如何用
2022-08-02 13:56:00 【亿速云】
mysql的case when如何用
本篇内容介绍了“mysql的case when如何用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
在mysql中,“case when”用于计算条件列表并返回多个可能结果表达式之一;“case when”具有两种语法格式:1、简单函数“CASE[col_name]WHEN[value1]THEN[result1]…ELSE[default]END”;2、搜索函数“CASE WHEN[expr]THEN[result1]…ELSE[default]END”。
本教程操作环境:windows10系统、mysql8.0.22版本、Dell G3电脑。
mysql的case when怎么用
case when语句,用于计算条件列表并返回多个可能结果表达式之一。
CASE 具有两种格式:简单 CASE 函数将某个表达式与一组简单表达式进行比较以确定结果。 CASE 搜索函数计算一组布尔表达式以确定结果。 两种格式都支持可选的 ELSE 参数。
在做数据分析的时候,需要从数据库中查找数据并进行分析展示,准确的数据查询结果有利于后期简洁有效的分析。在此期间用到了 mysql中的case when,记录一下case when的用法。
CASE语句为多分支语句结构,该语句首先从WHEN后的VALUE中查找与CASE后的VALUE相等的值,如果查找到,则执行该分支的内容,否则执行ELSE后面的内容。
MySql的case when 语法有两种:
1、简单函数
CASE[col_name]WHEN[value1]THEN[result1]…ELSE[default]END
2、搜索函数
CASE WHEN[expr]THEN[result1]…ELSE[default]END
简单函数
CASE input_expressionWHEN when_expression THEN result_expression [...n ] [ELSE else_result_expressionEND
枚举Input_expression所有可能的值。
Input_expression 和每个 when_expression 的数据类型必须相同,或者是隐性转换。
搜索函数
CASE WHEN [Boolean_expression] THEN [result1]…ELSE [default] END
判断Boolean_expression表达式,如果满足,返回then后边的结果
以人员表为例
第一种用法,when后边必须接case列的值,不能是表达式
select case sex when sex='1' then '男' when sex='2' then '女' else '其他' end as '性别' from people;select case sex when sex='2' then '女' when sex='1' then '男' else '其他' end as '性别' from people;
查询结果
原因:因为when后边不是case列的所有可能值,而是表达式,但是为什么会出现’男’这样的结果,需要思考,后边研究明白后,再更新
正确写法
select case sex when '1' then '男' when '2' then '女' else '其他' end as '性别' from people;
查询结果
“mysql的case when如何用”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注亿速云网站,小编将为大家输出更多高质量的实用文章!
边栏推荐
- 读《IDEO,设计改变一切》有感
- WiFi Association&Omnipeek抓包分析
- 玉溪卷烟厂通过正确选择时序数据库 轻松应对超万亿行数据
- 【C语言】函数哪些事儿,你真的get到了吗?(2)
- 短视频美食自媒体怎么做?5步教你快速上手
- 网络安全第一次作业(2)
- Differences and concepts between software testing and hardware testing
- 你真的懂单例模式么
- Embedded system driver primary [2] - based on character device driver _ basic framework
- 智能指针-使用、避坑和实现
猜你喜欢
数值的整数次方
矩阵中的路径
苏州大学:从 PostgreSQL 到 TDengine
86.(cesium之家)cesium叠加面接收阴影效果(gltf模型)
"Second Uncle" is popular, do you know the basic elements of "exploding" short videos from the media?
【C语言】手撕循环结构 ——do...while语句及循环练习题(1)
“二舅”火了,自媒体短视频“爆火”的基本要素,你知道吗?
Summer training camp-week2 graph theory
【C语言】手把手带你写游戏 —— 猜数字
鲲鹏devkit & boostkit
随机推荐
【C语言】手把手带你写游戏 —— 猜数字
二极管及其应用
els strip collision deformation judgment
FFmpeg 的AVCodecContext结构体详解
存储过程详解
C language improvement (3)
How to connect DBeaver TDengine?
CVE-2020-27986 (Sonarqube sensitive information leak) vulnerability fix
网络安全第六次作业
第二讲 软件生命周期
WiFi Association & Omnipeek Packet Capture Analysis
C# 编译错误:Compiler Error CS1044
wait() ,notify(),notifyAll()以及wait()与sleep()比较
els long block deformation conditions, boundary collision judgment
RKMPP 在FFmpeg上实现硬编解码
MySQL - ERROR 1045 (28000): Access denied for user ‘root’@‘localhost’ (using password: YES)
嵌入式系统驱动初级【2】——字符设备驱动基础上_基础框架
[C language] Explicit array solution (1)
k8s之KubeSphere部署有状态数据库中间件服务 mysql、redis、mongo
Summer training camp-week2 graph theory