mysql子查询习题98
#1.查询工资最低的员工信息:last name, salary
SELECT
last_name,
salary
FROM
employees
WHERE
salary = (
SELECT
MIN(salary)
FROM
employees
); #2.查询平均工资最低的部门信息
SELECT
*
FROM
departments
WHERE
department_id = (
SELECT
department_id
FROM
employees
GROUP BY
department_id
ORDER BY
avg(salary)
LIMIT 1
); #3.查询平均工资最低的部门信息和该部门的平均工资
#①各部门的平均工资
SELECT
avg(salary),
department_id
FROM
employees
GROUP BY
department_id #②求出最低平均工资的部门编号
SELECT
avg(salary),
department_id
FROM
employees
GROUP BY
department_id
ORDER BY
avg(salary)
LIMIT 1; #③查询部门信息
SELECT
d.*, ag
FROM
departments d
JOIN (
SELECT
avg(salary),
department_id
FROM
employees
GROUP BY
department_id
ORDER BY
avg(salary)
LIMIT 1
) ag_dep ON d.department_id = ag_dep.department_id #4.查询平均工资最高的job信息
SELECT
avg(salary)
FROM
employees
GROUP BY
job_id
ORDER BY
avg(salary) DESC
LIMIT 1 ②查询job信息 SELECT
*
FROM
jobs
WHERE
job_id = (
SELECT
job_id
FROM
employees
GROUP BY
job_id
ORDER BY
avg(salary) DESC
LIMIT 1
); #5.查询平均工资高于公司平均工资的部门有哪些?
SELECT
avg(salary),
department_id
FROM
employees
GROUP BY
department_id; HAVING
avg(salary) > (
SELECT
avg(salary)
FROM
employees
); #6.查询出公司中所有 manager的详细信息
SELECT
*
FROM
employees
WHERE
employee_id IN (
SELECT DISTINCT
manager_id
FROM
employees
); #7.各个部门中最高工资中最低的那个部门的最低工资是多少
SELECT
min(salary),
department_id
FROM
employees
WHERE
department_id = (
SELECT
department_id
FROM
employees
GROUP BY
department_id
ORDER BY
max(salary)
LIMIT 1
); #8.查询平均工资最高的部门的 manager的详细信息:last_name, department id, email
SELECT
last_name,
d.department_id,
email,
salary
FROM
employees e
JOIN departments d ON d.manager_id = e.manager_id
WHERE
d.department_id = (
SELECT
department_id
FROM
employees
GROUP BY
department_id
ORDER BY
avg(salary) DESC
LIMIT 1
);
mysql子查询习题98的更多相关文章
- [慢查优化]慎用MySQL子查询,尤其是看到DEPENDENT SUBQUERY标记时
案例梳理时间:2013-9-25 写在前面的话: 在慢查优化1和2里都反复强调过 explain 的重要性,但有时候肉眼看不出 explain 结果如何指导优化,这时候还需要有一些其他基础知识的佐助, ...
- Mysql子查询、关联查询
mysql中update.delete.install尽量不要使用子查询 一.mysql查询的五种子句 where(条件查询).having(筛选).group by(分组).orde ...
- Mysql子查询IN中使用LIMIT
学习下Mysql子查询IN中使用LIMIT的方法. 这两天项目里出了一个问题,mysql LIMIT使用后报错. 需求是这样的,我有3张表,infor信息表,mconfig物料配置表,maaply物料 ...
- MySQL 子查询 EXISTS 和 NOT EXISTS(转)
MySQL EXISTS 和 NOT EXISTS 子查询 MySQL EXISTS 和 NOT EXISTS 子查询语法如下: SELECT ... FROM table WHERE EXISTS ...
- mysql子查询慢的问题
当你在用explain工具查看sql语句的运行计划时.若select_type 字段中出现"DEPENDENT SUBQUERY"时,你要注意了.你已经掉入了mysql子查询慢 ...
- MySQL子查询,派生表和通用表达式
一:子查询 1.介绍 在另一个查询(外部查询)中嵌套另一个查询语句(内部查询),并使用内部查询的结果值作为外部查询条件. 2.子查询在where中 SELECT customerNumber, che ...
- MySQL子查询慢现象的解决
当你在用explain工具查看sql语句的执行计划时,若select_type 字段中出现“DEPENDENT SUBQUERY”时,你要注意了,你已经掉入了mysql子查询慢的“坑". 相 ...
- MySQL子查询有哪五种形式?
MySQL是一个关系型数据库管理系统,由瑞典MySQLAB公司开发,目前属于Oracle旗下产品.MySQL是最流行的关系型数据库管理系统之一,在web应用方面,MySQL是最好的RDBMS(Rela ...
- mysql子查询用法
mysql子查询用法 1 可以当值来用<pre>select id from hcyuyin_share where id=(select id from hcyuyin_share li ...
随机推荐
- 结合中断上下文切换和进程上下文切换分析Linux内核的一般执行过程
结合中断上下文切换和进程上下文切换分析Linux内核的一般执行过程 目录 结合中断上下文切换和进程上下文切换分析Linux内核的一般执行过程 一. 实验准备 二. 实验过程 I 分析中断上下文的切换 ...
- BT.656视频信号解码
BT.656视频信号解码 BT.656协议标准 ITU-R BT.601和ITU-R BT.656是ITU-R(国际电信联盟)制定的标准.严格来说ITU-R BT.656是ITU-R BT.601 ...
- android中的逐帧动画
在android中实现动画最简单的一种方式就是使用逐帧动画(AnimationDrawable).逐帧动画的原理同最古老的动画机制是一样的,通过快速的播放一组变化微小的图片,在人眼的视差时间下,达到一 ...
- Docker精华 ,超全文档!
我们的口号是:再小的帆也能远航,人生不设限!! 学习规划:继续上篇 <Docker入门>https://www.cnblogs.com/dk1024/p/13121389.html ...
- 团队Github实践训练
这个作业属于哪个课程 软件工程 (福州大学至诚学院 - 计算机工程系) 团队名称 WeChair 这个作业要求在哪里 团队Github实践训练 这个作业的目标 通过github实现团队协作编码 作业正 ...
- opencv c++访问某一区域
int main(){ cv::Mat m1(,, CV_8UC1); for(int i=;i<m1.rows;++i) for(int j=;j<m1.cols;++j) m1.at& ...
- SSL/TSL 原理( 握手原理和传输原理)
本文参考<计算机网络 自顶向下方法> 目录 背景 通信的4要素 SSL/TLS in Detail 通讯保证 The Handshake Protocol 1. Initial Clien ...
- JavaWeb网上图书商城完整项目--day02-4.regist页面提交表单时对所有输入框进行校验
1.现在我们要将table表中的输入的参数全部提交到后台进行校验,我们提交我们是按照表单的形式提交,所以我们首先需要在table表外面添加一个表单 <%@ page language=" ...
- 【总结】Github通过Git Bash上传文件到仓库
1-ML新文件夹连接仓库gir clone(最好用SSH不需要输入账户密码 SSH需要设置秘钥) 2-ML中设立空文件夹与项目同名(要新建 打开隐藏文件选项 文件夹内不许有文件会报错) 3-在项 ...
- jQuery创建表格并实现删除
利用jQuery创建一个简单的表格,并添加一个简单的删除按钮 <!DOCTYPE html> <html lang="en"> <head> & ...