本篇内容介绍了“mysql数据库子查询的实例用法”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

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

SELECTlast_name,salaryFROMemployeesWHEREdepartment_id=(SELECTdepartment_idFROMemployeesWHERElast_name='Zlotkey');

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

SELECTemployee_id,last_name,salaryFROMemployeesWHEREsalary>(SELECTAVG(salary)FROMemployees);

#查询各部门中工资比本部门平均工资高的员工号、姓名和工资
注:连接员工表和平均工资表,再筛选

SELECTemployee_id,last_name,salaryFROM(SELECTAVG(salary)s,department_idFROMemployeesGROUPBYdepartment_id)aINNERJOINemployeeseONa.department_id=e.department_idWHEREe.salary>s;

#查询和姓名中包含字母u的员工在相同部门的员工的员工号和姓名
先查询包含u员工的部门id,再查id相同情况

SELECTemployee_id,last_nameFROMemployeesWHEREdepartment_idIN(SELECTDISTINCTdepartment_idFROMemployeesWHERElast_nameLIKE'%u%');

#查询在部门的location_id为1700的部门工作的员工的员工号
注先查询location_id等于1700的部门编号,在查询员工号

SELECTemployee_idFROMemployeeseWHEREe.`department_id`IN(SELECTdepartment_idFROMdepartmentsdWHEREd.`location_id`=1700)

#查询管理者是K_ing的员工姓名和工资,有两个K_ing

SELECTlast_name,salaryFROMemployeeseWHEREe.manager_idIN(SELECT`employee_id`FROMemployeesmWHERE`last_name`='K_ing');

#查询工资最高的员工的姓名,要求first_ame和last_name 显示为一列,列名为 姓.名
#起别名有特殊字符需要用引号括起来

SELECTCONCAT(first_name,last_name)'姓.名'FROMemployeeseWHEREe.salary=(SELECTMAX(salary)FROMemployees);

“mysql数据库子查询的实例用法”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注亿速云网站,小编将为大家输出更多高质量的实用文章!