MYSQL练题笔记-高级查询和连接-这系列最后一题以及下个系列(子查询)的第一题

今天做了下面两题,到第三题的时候想了下但是没有太多的思路,然后看题解的时候实在是觉得自己不会,打算明天看吧。

1.按分类统计薪水相关的表和题目如下

我看到题目就认为有三个输出需要联合,所以就用了union,我的题解如下

select 'Low Salary'as category, count(income) as accounts_count from accounts where income<20000 union select 'Average Salary'as category, count(income) as accounts_count from accounts where income between 20000 and 50000 union select 'High Salary'as category, count(income) as accounts_count from accounts where income>50000;

就是普通的union联合表,但是效率好像不高,我看效率第一的题解有一个很长的,如下图

我想着理解with as 但是百度我觉得这种方式不重要,而且我觉得这个太复杂了,还是觉得不去理解了。

2.上级经理已离职的公司员工相关的表和题目如下

我是想着简化问题,先找出薪水低于30000的员工,然后找这些员工的上级是否在全部的表里,但是其实刚开始我是没有想出来的,画了个图才发现不难,写完其实会发现是很简单的一题,我的题解如下

select employee_id from employees where salary<30000 and manager_id not in (select employee_id from employees) order by employee_id;

总结

有行动就是我这个菜鸟的进步,不行动啥也没有,生命在于探索和实践,现在的情况不好不代表以后,加油加油!!!!我现在就是觉得这种方式其实反馈不是很多的,没有探讨的步骤,自己的话又不会,不过一句话还是多练多反思和实践吧!!!

相关推荐
李兆龙的博客5 分钟前
从一到无穷大 #67 大查询根因分析 - 从 PinSQL 到 RCRank
数据库·时序数据库
AgCl2323 分钟前
MYSQL-6-函数与约束-3/17
android·数据库·mysql
junqiduhang29 分钟前
Win11 MySQL 8.0 安装八步走
数据库·mysql
zhangchaoxies34 分钟前
golang如何使用SQLx原生SQL查询_golang SQLx原生SQL查询使用方法
jvm·数据库·python
m0_7436239234 分钟前
mysql如何优化InnoDB缓冲池大小_mysql缓冲池内存调优
jvm·数据库·python
孟意昶36 分钟前
Doris专题31-SQL手册-基础元素
大数据·数据库·数据仓库·分布式·sql·知识图谱·doris
m0_6178814237 分钟前
如何操作 XML 数据_XMLTYPE 与 EXTRACT 函数解析节点
jvm·数据库·python
qq_3345635542 分钟前
golang如何实现SSTable持久化_golang SSTable持久化实现要点
jvm·数据库·python
2301_7775993744 分钟前
Redis怎样应对大规模集群的重启风暴_分批次重启节点并等待集群状态恢复绿灯后再继续操作
jvm·数据库·python
一只小白0001 小时前
Redis 常用命令总结
数据库·redis·缓存