Перечислите идентификатор отдела, название отдела и количество менеджеров на отдел - PullRequest
0 голосов
/ 19 апреля 2020

Я хочу перечислить все идентификаторы и отделы, а также количество менеджеров в отделе без дублирования. Не могли бы вы проверить это правильно или неправильно и сказать мне, где я должен исправить? Спасибо за чтение.

Ниже изображение моей работы,

enter image description here

Вот запросы, которые я использовал (внутри изображения, но просто в случае)

select  departments.dept_no as department_ID,
    departments.dept_name as department_Name,
    dept_manager.emp_no, count(distinct dept_manager.emp_no) as Numbers_of_Managers
from departments
inner join dept_manager on dept_manager.dept_no=departments.dept_no
group by dept_manager.dept_no;

Ответы [ 2 ]

2 голосов
/ 19 апреля 2020

Вы не должны иметь dept_manager.emp_no в списке SELECT. Назначение не требует этого, и вы просто выбираете одного случайного менеджера из группы.

Кроме этого, все в порядке.

0 голосов
/ 19 апреля 2020

В дополнение к ответу @Barmars вы можете изменить свой запрос следующим образом, чтобы его было легче читать:

SELECT
    d.dept_no as department_ID,
    d.dept_name as department_Name,
    count(distinct dm.emp_no) as Numbers_of_Managers
FROM
    departments d,
    dept_manager dm
WHERE
    dm.dept_no = d.dept_no
GROUP BY
    dm.dept_no;
...