Помогите сделать запрос в mysql
Написать запрос, который выводит кол-во различных ролей для каждого из проектов (должны выводиться названия проектов). Результаты должны быть отсортированы по возрастанию количества различных ролей. Есть таблица проекты (имя_проекта, ид_проекта) и таблица работники (ид_работника, ид_проекта, роль)
SELECT project_name, r.roles_count
FROM projects AS p
JOIN
(
SELECT project_id, COUNT (DISTINCT role) AS roles_count
FROM employees
GROUP BY project_id
) r ON p.project_id = r.project_id
ORDER BY 2;
Или ещё вот так
SELECT p.project_name, COUNT (DISTINCT role) AS roles_count
FROM employees as r
GROUP BY project_id
JOIN projects p
ON r.project_id = p.project_id
ORDER BY 2;
в ордер бай нужно так :count(distinct r. role), r. role
селект п. имя_проекта, каунт (дистинкт р. роль) фром проекты п
джойн работники р он р. ид_проекта = п. ид_проекта
груп бай п. имя_проекта
ордер бай каунт (дистинкт р. роль)