1. -- 1. 查询和Zlotkey相同部门的员工姓名和工资
    2. -- ①查询Zlotkey的部门
    3. SELECT department_id
    4. FROM employees
    5. WHERE last_name = 'Zlotkey'
    6. -- ②查询部门号=①的姓名和工资
    7. SELECT last_name,salary
    8. FROM employees
    9. WHERE department_id = (
    10. SELECT department_id
    11. FROM employees
    12. WHERE last_name = 'Zlotkey'
    13. )
    14. -- 2.查询工资比公司平均工资高的员工的员工号,姓名和工资。
    15. -- ①查询平均工资
    16. SELECT AVG(salary)
    17. FROM employees
    18. -- ②查询工资>①的员工号,姓名和工资。
    19. SELECT last_name,employee_id,salary
    20. FROM employees
    21. WHERE salary>(
    22. SELECT AVG(salary)
    23. FROM employees
    24. );
    25. -- 3.查询各部门中工资比本部门平均工资高的员工的员工号, 姓名和工资
    26. -- ①查询各部门的平均工资
    27. SELECT AVG(salary),department_id
    28. FROM employees
    29. GROUP BY department_id
    30. -- ②连接①结果集和employees表,进行筛选
    31. SELECT employee_id,last_name,salary,e.department_id
    32. FROM employees e
    33. INNER JOIN (
    34. SELECT AVG(salary) ag,department_id
    35. FROM employees
    36. GROUP BY department_id
    37. ) ag_dep
    38. ON e.department_id = ag_dep.department_id
    39. WHERE salary>ag_dep.ag ;
    40. -- 4. 查询和姓名中包含字母u的员工在相同部门的员工的员工号和姓名
    41. -- ①查询姓名中包含字母u的员工的部门
    42. SELECT DISTINCT department_id
    43. FROM employees
    44. WHERE last_name LIKE '%u%'
    45. -- ②查询部门号=①中的任意一个的员工号和姓名
    46. SELECT last_name,employee_id
    47. FROM employees
    48. WHERE department_id IN(
    49. SELECT DISTINCT department_id
    50. FROM employees
    51. WHERE last_name LIKE '%u%'
    52. );
    53. -- 5. 查询在部门的location_id1700的部门工作的员工的员工号
    54. -- ①查询location_id1700的部门
    55. SELECT DISTINCT department_id
    56. FROM departments
    57. WHERE location_id = 1700
    58. -- ②查询部门号=①中的任意一个的员工号
    59. SELECT employee_id
    60. FROM employees
    61. WHERE department_id =ANY(
    62. SELECT DISTINCT department_id
    63. FROM departments
    64. WHERE location_id = 1700
    65. );
    66. -- 6.查询管理者是King的员工姓名和工资
    67. -- ①查询姓名为king的员工编号
    68. SELECT employee_id
    69. FROM employees
    70. WHERE last_name = 'K_ing'
    71. -- ②查询哪个员工的manager_id =
    72. SELECT last_name,salary
    73. FROM employees
    74. WHERE manager_id IN(
    75. SELECT employee_id
    76. FROM employees
    77. WHERE last_name = 'K_ing'
    78. );
    79. -- 7.查询工资最高的员工的姓名,要求first_namelast_name显示为一列,列名为 姓.名
    80. -- ①查询最高工资
    81. SELECT MAX(salary)
    82. FROM employees
    83. -- ②查询工资=①的姓.名
    84. SELECT CONCAT(first_name,last_name) "姓.名"
    85. FROM employees
    86. WHERE salary=(
    87. SELECT MAX(salary)
    88. FROM employees
    89. );