当前位置:网站首页>【SQL实战】一条SQL统计全国各地疫情分布情况
【SQL实战】一条SQL统计全国各地疫情分布情况
2022-07-07 00:35:00 【51CTO】
-- 疫情表,三个字段:城市/地区 省份 当前确诊人数
DROP TABLE IF EXISTS yiqing;
CREATE TABLE `datacenter`.`yiqing`(
`city` VARCHAR(32) COMMENT '城市/地区',
`province` VARCHAR(32) COMMENT '省份',
`current` INT COMMENT '当前确认人数'
)
COMMENT='疫情信息表';
INSERT INTO yiqing
SELECT '津南区', '天津', 217 UNION ALL
SELECT '安阳', '陕西', 110 UNION ALL
SELECT '西安', '陕西', 1385 UNION ALL
SELECT '咸阳', '河南', 10 UNION ALL
SELECT '郑州', '河南', 138 UNION ALL
SELECT '南阳', '河南', 95 UNION ALL
SELECT '呼伦贝尔', '内蒙古', 5 UNION ALL
SELECT '宁波', '浙江', 55 UNION ALL
SELECT '开封', '河南', 5 UNION ALL
SELECT '金华', '浙江', 3 UNION ALL
SELECT '防城港', '广西', 2 UNION ALL
SELECT '中山', '广东', 51 UNION ALL
SELECT '大连', '辽宁', 3 ;
SELECT * FROM yiqing ORDER BY 2,1;
-- §§§【统计全国疫情分布情况 结果列:省份、严重程度级别、累计确诊人数】
SELECT province AS '省份'
, CASE WHEN SUM(current)>=100 THEN 'Level1' WHEN SUM(current)<100 AND SUM(current)>=50 THEN 'Level2' ELSE 'Levy3' END AS '严重程度'
, SUM(current) AS '累计确认人数'
FROM yiqing
GROUP BY province
ORDER BY 3 DESC;
-- §§§【统计各省份疫情分布情况 结果列:省份、疫情风险等级、城市地区数、当前确诊数。例如:河南省有3个高风险城市,确诊人数总计300人】
SELECT province AS '省份'
, CASE WHEN current>=100 THEN '高'
WHEN current>=50 AND current<100 THEN '中'
ELSE '低' END AS '疫情风险等级'
, COUNT(1) AS '城市地区数'
, SUM(current) AS '当前确诊数'
FROM yiqing
GROUP BY province, CASE WHEN current>=100 THEN '高'
WHEN current>=50 AND current<100 THEN '中'
ELSE '低' END
ORDER BY 1, CASE 疫情风险等级 WHEN '高' THEN 1 WHEN '中' THEN 2 ELSE 3 END;
边栏推荐
- Reading notes of Clickhouse principle analysis and Application Practice (6)
- 架构设计的五个核心要素
- Paper reading [MM21 pre training for video understanding challenge:video captioning with pre training techniqu]
- Opensergo is about to release v1alpha1, which will enrich the service governance capabilities of the full link heterogeneous architecture
- Hcip seventh operation
- 软件测试面试技巧
- [solved] record an error in easyexcel [when reading the XLS file, no error will be reported when reading the whole table, and an error will be reported when reading the specified sheet name]
- 话说SQLyog欺骗了我!
- PTA 天梯赛练习题集 L2-002 链表去重
- Realize GDB remote debugging function between different network segments
猜你喜欢
[paper reading] semi supervised left atrium segmentation with mutual consistency training
EMMC打印cqhci: timeout for tag 10提示分析与解决
判断文件是否为DICOM文件
yarn入门(一篇就够了)
Paper reading [MM21 pre training for video understanding challenge:video captioning with pre training techniqu]
bat 批示处理详解
如果不知道这4种缓存模式,敢说懂缓存吗?
Five core elements of architecture design
上海字节面试问题及薪资福利
Add salt and pepper noise or Gaussian noise to the picture
随机推荐
async / await
SQL query: subtract the previous row from the next row and make corresponding calculations
话说SQLyog欺骗了我!
What is message queuing?
AI face editor makes Lena smile
一个简单的代数问题的求解
Taobao store release API interface (New), Taobao oauth2.0 store commodity API interface, Taobao commodity release API interface, Taobao commodity launch API interface, a complete set of launch store i
Mybaits multi table query (joint query, nested query)
【Shell】清理nohup.out文件
EMMC打印cqhci: timeout for tag 10提示分析与解决
上海字节面试问题及薪资福利
原生小程序 之 input切換 text與password類型
What are the common message queues?
sql查询:将下一行减去上一行,并做相应的计算
Paper reading [semantic tag enlarged xlnv model for video captioning]
PTA 天梯赛练习题集 L2-003 月饼 测试点2,测试点3分析
R语言【逻辑控制】【数学运算】
Industrial Finance 3.0: financial technology of "dredging blood vessels"
What is dependency injection (DI)
Hcip eighth operation