Я долгое время работал в компании, где мне приходилось составлять SQL запросы для анализа данных. Одним из самых интересных запросов, который мне удалось составить, был запрос на получение таблицы с фамилиями сотрудников и количеством пользователей, чьи запросы они обработали.Для начала, я создал таблицу ″employees″ с колонками ″employee_id″ и ″employee_last_name″, где ″employee_id″ ― это уникальный идентификатор сотрудника, а ″employee_last_name″, его фамилия. Затем, я создал таблицу ″customer_requests″ с колонками ″request_id″ и ″employee_id″, где ″request_id″ ― это уникальный идентификатор запроса, а ″employee_id″, идентификатор сотрудника, обработавшего этот запрос.Далее, я составил SQL запрос, который объединяет обе таблицы и считает количество пользователей для каждого сотрудника⁚
sql
SELECT e.employee_last_name, COUNT(c.request_id) as all_customers
FROM employees e
LEFT JOIN customer_requests c ON e.employee_id c.employee_id
GROUP BY e.employee_id
ORDER BY all_customers DESC;
В этом запросе я использовал оператор JOIN для объединения таблиц ″employees″ и ″customer_requests″ по полю ″employee_id″. Затем я использовал функцию COUNT, которая считает количество записей с запросами для каждого сотрудника. С помощью оператора GROUP BY я сгруппировал записи по идентификатору сотрудника. И, наконец, я отсортировал результаты по убыванию количества пользователей с помощью оператора ORDER BY.
Таким образом, после выполнения этого запроса получится таблица с двумя полями⁚ ″employee_last_name″ — фамилия сотрудника и ″all_customers″ ― количество пользователей, чьи запросы он обработал. Это запрос помог мне получить полезную информацию о работе сотрудников и их эффективности в обработке запросов.