Проблема состоит в том, чтобы попросить одного написать запрос, чтобы найти имена (имя, фамилия) сотрудников, у которых есть менеджер, который работает в отделе, расположенном в Соединенных Штатах.Вот ссылка на проблему, чтобы просмотреть таблицы: https://www.w3resource.com/sqlite-exercises/sqlite-subquery-exercise-3.php.
Для подзапроса я выполнил левое соединение по идентификатору местоположения между таблицами отделов и местоположений, а затем выбрал «US» для country_idи возвратил manager_id
Для внешнего запроса я выбрал таблицу Employee, выбрал manager_ids из списка подзапросов.
SELECT first_name, last_name
FROM Employees
WHERE manager_id IN (SELECT manager_id
FROM Departments d LEFT JOIN Locations l ON d.location_id = l.location_id
WHERE country_id = 'US')
ORDER BY first_name;
С моим кодом я не получил правильный ответ, те же результаты, что и набор результатов / вывод, показанный на веб-сайте.Всего в правильном ответе три подзапроса.Я не понимаю, какова цель включения подзапроса, включающего таблицу сотрудников (самый внешний подзапрос).Я понимаю, что именно здесь я запутался, но не понимаю, почему.
SELECT first_name, last_name
FROM employees
WHERE manager_id IN
(SELECT employee_id
FROM employees
WHERE department_id IN
(SELECT department_id
FROM departments
WHERE location_id IN
(SELECT location_id
FROM locations
WHERE country_id='US')));