黑猴子的家:mysql 子查询练习题

1、查询和Zlotkey相同部门的员工姓名和工资

SELECT last_name,salary 
FROM employees
WHERE department_id=(
    SELECT department_id
    FROM employees
    WHERE last_name='Zlotkey'
)

2、查询工资比公司平均工资高的员工的员工号,姓名和工资。

(1)查询公司平均工资

SELECT AVG(salary) FROM employees

(2)查询工资>①的员工的员工号,姓名和工资

SELECT employee_id,last_name,salary
FROM employees 
WHERE salary>(
    SELECT AVG(salary) FROM employees
)

3、查询各部门中工资比本部门平均工资高的员工的员工号, 姓名和工资

(1)查询各部门的平均工资

SELECT department_id,AVG(salary)
FROM employees
GROUP BY department_id

(2)查询员工的员工号, 姓名和工资,满足本部门并且工资>①

SELECT salary,last_name,employee_id,e.department_id
FROM employees e,
(

    SELECT department_id,AVG(salary) ag
    FROM employees
    GROUP BY department_id
) av_dep
WHERE e.department_id = av_dep.department_id
AND e.salary>av_dep.ag;

4、查询和姓名中包含字母u的员工在相同部门的员工的员工号和姓名

(1)查询姓名中包含字母u的员工的部门

SELECT department_id
FROM employees
WHERE last_name LIKE '%u%'

(2)部门=①的员工的员工号和姓名

SELECT employee_id,last_name
FROM employees
WHERE department_id IN(
    SELECT department_id
    FROM employees
    WHERE last_name LIKE '%u%'
);

5、查询在部门的location_id为1700的部门工作的员工的员工号

(1)查询loaction_id =1700的部门编号

SELECT  department_id
FROM departments
WHERE location_id =1700

(2)查询员工号,满足部门号=①

SELECT employee_id
FROM employees 
WHERE department_id IN(
    SELECT  department_id
    FROM departments
    WHERE location_id =1700
);

6、查询管理者是King的员工姓名和工资

(1)查询员工名是king的编号

SELECT employee_id
FROM employees
WHERE last_name = 'King'

(2)查询员工姓名和工资,领导的编号=①

SELECT last_name,salary
FROM employees
WHERE manager_id IN(
    SELECT employee_id
    FROM employees
    WHERE last_name = 'King'
);

7、查询工资最高的员工的姓名,要求first_name和last_name显示为一列,列名为 姓.名

(1)查询最高工资

SELECT MAX(salary) FROM employees

(2)查询姓名,工资=①

SELECT CONCAT(first_name,'.',last_name) "姓.名"
FROM employees
WHERE salary=(
    SELECT MAX(salary) FROM employees
);
  • 6
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值