子查询 - W3Resources
Subquery - W3Resources
我想知道我的代码是否有效?
关于 this w3school exercise 的问题 #3:
SELECT first_name, last_name
FROM employees
WHERE
manager_id IS NOT NULL
AND manager_id IN (
SELECT manager_id
FROM departments
WHERE location_id IN (
SELECT location_id
FROM locations
WHERE country_id='US'
)
)
;
是的,您的代码应该可以工作。
请注意,SQL 中检查 manager_id 是否不为空的部分是多余的,可以删除(IN 子句已经确保 manager_id 已设置)。
可以使用一组 JOIN 来优化查询,例如:
SELECT e.first_name, e.last_name
FROM employees e
INNER JOIN departments d ON d.manager_id = e.manager_id
INNER JOIN locations l ON l.department_id = d.department_id AND l.country_id='US'
我想知道我的代码是否有效? 关于 this w3school exercise 的问题 #3:
SELECT first_name, last_name
FROM employees
WHERE
manager_id IS NOT NULL
AND manager_id IN (
SELECT manager_id
FROM departments
WHERE location_id IN (
SELECT location_id
FROM locations
WHERE country_id='US'
)
)
;
是的,您的代码应该可以工作。
请注意,SQL 中检查 manager_id 是否不为空的部分是多余的,可以删除(IN 子句已经确保 manager_id 已设置)。
可以使用一组 JOIN 来优化查询,例如:
SELECT e.first_name, e.last_name
FROM employees e
INNER JOIN departments d ON d.manager_id = e.manager_id
INNER JOIN locations l ON l.department_id = d.department_id AND l.country_id='US'