botang 发表于 2020-9-13 21:14:57

关联子查询如果可能把它改成普通子查询:

SELECT employee_id,salary,last_name FROM employees M
WHERE EXISTS
(SELECT 'X'FROM employees W
WHERE (W.manager_id=M.employee_id) AND W.salary > 10000);

SELECT employee_id,salary,last_name FROM employees M
WHEREemployee_id in
(SELECT W.manager_idFROM employees W
WHERE (W.manager_id=M.employee_id) AND W.salary > 10000);

SELECT employee_id,salary,last_name FROM employees M
WHERE   employee_idin
(SELECT manager_id   FROM employees
WHEREsalary > 10000);




SELECT * FROM departments
WHERE NOT EXISTS
(SELECT * FROM employees
WHERE employees.department_id=departments.department_id);


SELECT * FROM departments
WHERE not exists
(SELECT 'X'   FROM employees
WHERE employees.department_id=departments.department_id);

SELECT * FROM departments
where department_id not in
(selectdepartment_idfrom employeeswhere department_id is not null);




页: [1]
查看完整版本: 关联子查询如果可能把它改成普通子查询: