我使用此查询来显示所有部门及其经理,包括没有经理的部门,这就是我使用左连接的原因。现在我需要删除没有经理的部门。这是我当前的查询:
select
d.DEPARTMENT_NAME,
concat(e.FIRST_NAME,"",e.LAST_NAME) as NAME,
l.CITY
from locations l
join departments d on d.LOCATION_ID = l.LOCATION_ID
left join employees e on e.DEPARTMENT_ID = d.DEPARTMENT_ID
where city = 'Seattle';
如何更改?
我认为我需要在某处使用删除命令,但我不确定具体在哪里
我使用子查询从“西雅图”的位置中选择 LOCATION_ID,我用它来限制删除该城市的部门。
DELETE d FROM departments d
LEFT JOIN employees e ON e.DEPARTMENT_ID = d.DEPARTMENT_ID
WHERE e.DEPARTMENT_ID IS NULL
AND d.LOCATION_ID IN (
SELECT l.LOCATION_ID
FROM locations l
WHERE l.CITY = 'Seattle'
);