MySQL子查询

#列子查询
#返回 location_id是1400或1700的部门中所有员工姓名
SELECT last_name,location_id
FROM employees,departments
WHERE departments.department_id=employees.department_id
AND location_id IN
(SELECT location_id 
FROM departments
WHERE departments.location_id in(1400,1700)
);


SELECT last_name
FROM employees
WHERE  department_id IN 
(
SELECT department_id
FROM departments
WHERE location_id IN(1400,1700)
);

#返回其他工种中比job-id为'IT_PROG'工种任一工资低的员工的员工号,姓名,job_id以及salary
SELECT employee_id,last_name,salary
FROM employees
WHERE salary<ANY
(
SELECT salary 
FROM employees
WHERE job_id='IT_PROG'
)
AND job_id<>'IT_PROG'

#行子查询
# 查询员工编号最小且工资最高的员工信息
SELECT *
FROM employees
WHERE employee_id=
(SELECT MIN(employee_id)
FROM employees)
AND salary= 
(SELECT MAX(salary)
FROM employees)

#SELECT 后面
#查询每个部门的员工个数
SELECT  department_id,IF(employee_id,COUNT(*),0) 个数
FROM employees
GROUP BY department_id;


SELECT department_id,(SELECT COUNT(*)	
											FROM employees
											WHERE employees.department_id=departments.department_id
											) 个数
											FROM departments
											ORDER BY department_id;
#查询员工号为102的部门名
SELECT 
(
SELECT department_name
FROM departments,employees
WHERE departments.department_id=employees.department_id
AND employees.employee_id=102
) 部门名;

SELECT department_name 部门名
FROM departments
WHERE department_id=
(SELECT department_id
FROM employees
WHERE employee_id=102
);

#FROM 后面
#查询每个部门的平均工资的工资等级
SELECT  ag_dep.*,job_grades.grade_level
FROM (
    SELECT avg(salary) ag,department_id
		FROM employees
		GROUP BY department_id
		) ag_dep
INNER JOIN job_grades
ON  ag_dep.ag BETWEEN lowest_sal AND highest_sal


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

笨笨且云雀

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值