MySQL中CASE when 实战

CASE 语法

CASEWHEN condition1 THEN result1WHEN condition2 THEN result2WHEN conditionN THEN resultNELSE result
END; 

将表中的内容转换为右边的形式:
在这里插入图片描述
1、创建表,创建数据

CREATE TABLEchapter10_7 (order_id VARCHAR(255) NULL,price VARCHAR(255) NULL,deal_date VARCHAR(255) NULL,area VARCHAR(255) NULL
)
ENGINE=InnoDB
DEFAULT CHARSET=utf8mb4
COLLATE=utf8mb4_0900_ai_ci;INSERT INTOchapter10_7 (order_id, price, deal_date, area) VALUES('S001', '10', '2019/1/1', 'A区');
INSERT INTOchapter10_7 (order_id, price, deal_date, area) VALUES('S002', '20', '2019/1/1', 'B区');
INSERT INTOchapter10_7 (order_id, price, deal_date, area) VALUES('S003', '30', '2019/1/1', 'C区');
INSERT INTOchapter10_7 (order_id, price, deal_date, area) VALUES('S004', '40', '2019/1/2', 'A区');
INSERT INTOchapter10_7 (order_id, price, deal_date, area) VALUES('S005', '10', '2019/1/2', 'B区');
INSERT INTOchapter10_7 (order_id, price, deal_date, area) VALUES('S006', '20', '2019/1/2', 'C区');
INSERT INTOchapter10_7 (order_id, price, deal_date, area) VALUES('S007', '30', '2019/1/3', 'A区');
INSERT INTOchapter10_7 (order_id, price, deal_date, area) VALUES('S008', '40', '2019/1/3', 'C区');

2、SQL解决:

-- 选择 deal_date 和三个区域的订单数量  
SELECT  a.deal_date,  -- 选择 deal_date 列  COUNT(CASE WHEN a.area = 'A区' THEN order_id ELSE NULL END) AS A区,  -- 计算 A区的订单数量  COUNT(CASE WHEN a.area = 'B区' THEN order_id ELSE NULL END) AS B区,  -- 计算 B区的订单数量  COUNT(CASE WHEN a.area = 'C区' THEN order_id ELSE NULL END) AS C区  -- 计算 C区的订单数量    
FROM  chapter10_7 a  -- 从 chapter10_7 表中选择数据,并给这个表起了一个别名 'a'    
GROUP BY  a.deal_date;  -- 根据 deal_date 进行分组,这样我们可以为每个 deal_date 计算三个区域的订单数量

在这里插入图片描述CASE when 实战练习拓展:

SELECTorder_id,price,
CASE		WHEN price <= 10 THEN '价格低' WHEN price >= 10 AND price <= 20 THEN '价格中等'WHEN price >= 30 THEN'价格高等'ELSE '价格有问题' END AS price_category 
FROMdemo.chapter10_7

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/238607.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

大模型三级跳:2023年AI行业的崭新篇章

2023年&#xff0c;大模型的发展如同一场三级跳&#xff0c;迅速跃升至新的高度。从ChatGPT的火爆&#xff0c;到众多大厂纷纷入场&#xff0c;再到百模大战的激烈角逐&#xff0c;这一年的AI行业充满了竞争与变革。 首先&#xff0c;大模型的崛起标志着AI技术进入了一个新的阶…

uniapp中如何使用百度tts生成文字语音并播放

第一步先在百度云里面申请一个tts应用&#xff0c;这里默认你们都会了哈&#xff0c;申请完是这样的 第二步在manifest.json注册一下 第三步进项目,先获取token handleGetToken() {// client_id和client_secret就是百度API Key和Secret Keyuni.request({url: https://aip.ba…

TKEStack容器管理平台实战之部署wordpress应用

TKEStack容器管理平台实战之部署wordpress应用 一、TKEStack介绍1.1 TKEStack简介1.2 TKEStack特点1.3 TKEStack架构图 二、kubernetes集群介绍2.1 k8s简介2.2 k8s架构图 三、本次实践介绍3.1 实践环境要求3.2 本次实践环境规划3.3 本次实践简介 四、安装容器管理平台4.1 安装T…

洛谷 P8823

# [传智杯 #3 初赛] 期末考试成绩 ## 题目描述 传智专修学院的 Java 程序设计课程的评价体系是这样的&#xff1a; 首先&#xff0c;所有学生会有一个卷面得分&#xff0c;这个得分一定是一个 $[0,100]$ 之间的整数。 如果卷面得分在 $90$ 分及以上&#xff0c;那么他的 GPA&am…

Mac 上配置Java环境变量

1、查看Java版本信息 admin-Pro ~ % java -versionjava version "1.8.0_211"Java(TM) SE Runtime Environment (build 1.8.0_211-b12)Java HotSpot(TM) 64-Bit Server VM (build 25.211-b12, mixed mode) 查看安装了那些版本&#xff08;略&#xff09; admin-Pro ~…

ACL实现固定时间访问资源——项目

文章目录 一、前言二、项目拓扑三、项目需求四、配置思路五、配置步骤1 IP地址2 端口类型3 静态路由4 流策略 六、结语 免责声明 本文旨在提供信息和解决问题的建议&#xff0c;观点和建议可能不适用于个人情况&#xff0c;仅供参考&#xff01;&#xff01;&#xff01; 文章中…

残差网络学习

参考B站同济子豪兄的Resnet讲解 网络退化&#xff0c;不是梯度消失&#xff08;根本没有开始学习&#xff09;&#xff0c;梯度爆炸&#xff0c;过拟合。 不需要再拟合复杂底层的那个映射了&#xff0c;原来输入的基础上你需要进行哪些偏移哪些修改 残差预测值和真实值的偏差 一…

jdbc获取mysql数据表的字段和对应的数据类型

最近在做项目的时候因为经常会碰到代码在开发环境可以正常运行&#xff0c;但是到了测试和预生产环境运行报错&#xff0c;但是测试环境和预生产环境的网络与本地是隔离的&#xff0c;无法直接连接数据库&#xff0c;于是想到了把数据拷贝一份到开发环境来&#xff0c;但是有些…

锐捷配置PVLAN

一、实验拓扑 二、实验目的 PVLAN可以通过主VLAN和辅助VLAN的概念&#xff0c;部署隔离技术&#xff0c;实现用户间的互访控制。 三、实验配置 SW2 Ruijie >enable Ruijie #configure terminal Ruijie (config)#vlan 20 Ruijie (config-vlan)#private-vlan community …

视频号小店如何运营?流程跑通就成功了一大半!

我是电商珠珠 视频号小店是视频号团队发展的电商平台&#xff0c;目前处于项目的风口期&#xff0c;很多有想法的新手并不知道应该怎么去运营&#xff0c;今天我就来给大家讲一下。 一、入驻 视频号小店入驻的门槛较高&#xff0c;需要准备一张企业的营业执照&#xff0c;身…

Drupal 远程代码执行 CVE-2019-6340 已亲自复现

Drupal 远程代码执行 CVE-2019-6340 已亲自复现 漏洞名称漏洞描述影响版本 漏洞复现环境搭建 修复建议总结 漏洞名称 漏洞描述 Drupal是一个开源且以PHP语言写成的内容管理框架(CMF) 研究人员发现Drupal存在安全漏洞(CVE-2019-6340)&#xff0c;当攻击者以PATCH或POST方式传送…

MySQL NULL值处理

关于 NULL 的条件比较运算是比较特殊的。你不能使用 NULL 或 ! NULL 在列中查找 NULL 值 。 在 MySQL 中&#xff0c;NULL 值与任何其它值的比较&#xff08;即使是 NULL&#xff09;永远返回 NULL&#xff0c;即 NULL NULL 返回 NULL 。 MySQL 中处理 NULL 使用 IS NULL 和…

拥抱数字化转型,共赢数字时代 | 创维汽车商学院走进竹云

数字化浪潮汹涌而来&#xff0c;变革与创新接踵而至。随着数字技术日益融入经济社会发展的各个领域&#xff0c;数字经济与实体经济的“双向奔赴”也不断催生着新产业、新业态、新模式&#xff0c;为经济社会发展持续注入创新活力。12月19日&#xff0c;创维汽车商学院带领嘉宾…

Git版本控制系统:简介、演变与优缺点

目录 前言1 版本控制概述2 集中式版本控制的优缺点2.1 优点2.2 缺点 3 分布式版本控制的优缺点3.1 优点3.2 缺点 4 Git的发展过程结语 前言 在软件开发和团队协作中&#xff0c;版本控制是至关重要的。它允许开发人员跟踪文件的更改历史&#xff0c;协同工作并管理代码的不同版…

Shell编程自动化之特殊Shell扩展变量

1.变量的处理 1.1 如果parameter变量值为空&#xff0c;那么返回str字符串。 ${parameter:-str} 1.2 如果parameter变量值为空&#xff0c;那么str替代变量值&#xff0c;且返回其值。 ${parameter:str} 1.3 如果parameter变量值为空&#xff0c;那么str当作stderr输出&am…

【华为机试】2023年真题B卷(python)-乘坐保密电梯

一、题目 题目描述&#xff1a; 有一座保密大楼&#xff0c;你从0楼到达指定楼层m&#xff0c;必须这样的规则乘坐电梯:给定一个数字序列&#xff0c;每次根据序列中的数字n上升n层或者下降n层&#xff0c;前后两次操作的方向必须相反&#xff0c;规定首次的方向向上&#xff0…

亚马逊撸货、撸卡怎么做成功率更高?教你解决亚马逊撸货的底层环境

在当前的跨境电商环境下&#xff0c;许多人都在从事亚马逊的撸货、撸卡业务&#xff0c;但亚马逊的风控系统非常严格&#xff0c;因此很容易被封号或订单被取消。为了提高成功率&#xff0c;我们需要采取一些措施和方法。这篇文章就来分享做亚马逊撸货、撸卡如何提高成功率&…

Multi-value PBS

参考文献&#xff1a; [CIM19] Carpov S, Izabachne M, Mollimard V. New techniques for multi-value input homomorphic evaluation and applications[C]//Topics in Cryptology–CT-RSA 2019: The Cryptographers’ Track at the RSA Conference 2019, San Francisco, CA, …

RocketMQ系统性学习-RocketMQ高级特性之消息存储的高效与刷盘策略、Broker 快速读取消息机制

&#x1f308;&#x1f308;&#x1f308;&#x1f308;&#x1f308;&#x1f308;&#x1f308;&#x1f308; 【11来了】文章导读地址&#xff1a;点击查看文章导读&#xff01; &#x1f341;&#x1f341;&#x1f341;&#x1f341;&#x1f341;&#x1f341;&#x1f3…

探索Qt 6.3:了解基本知识点和新特性

学习目标&#xff1a; 理解Qt6.3的基本概念和框架&#xff1a;解释Qt是什么&#xff0c;它的核心思想和设计原则。学会安装和配置Qt6.3开发环境&#xff1a;提供详细的步骤&#xff0c;让读者能够顺利安装和配置Qt6.3的开发环境。掌握Qt6.3的基本编程技巧&#xff1a;介绍Qt6.…