База данных SQLite здесь
У меня вопрос: сколько клиентов поддерживал каждый сотрудник, каков средний доход от каждой продажи и какова их общая продажа?
Чтобы узнать, сколько клиентов было поддержано каждым сотрудником, мой код был таким:
SELECT employees.EmployeeId, customers.SupportRepId, COUNT(customers.CustomerId) "Customers supported"
FROM customers
JOIN employees ON employees.EmployeeId = customers.SupportRepId
GROUP BY customers.SupportRepId;
И результат, который я получил, был следующим:
+------------+--------------+----------------------+
| EmployeeID | SupportRepID | Customers Supported |
+------------+--------------+----------------------+
| 3 | 3 | 21 |
| 4 | 4 | 20 |
| 5 | 5 | 18 |
+------------+--------------+----------------------+
Для Получая общий и средний доход, я обновил свой код следующим образом:
SELECT employees.EmployeeId, customers.SupportRepId, COUNT(customers.CustomerId) 'Customers Supported', SUM(invoices.Total) 'Total Revenue', SUM(invoices.Total)/COUNT(customers.CustomerId) 'Average Revenue'
FROM customers
JOIN employees ON employees.EmployeeId = customers.SupportRepId
JOIN invoices ON invoices.CustomerId = customers.CustomerId
GROUP BY customers.SupportRepId;
И я получил следующий результат:
+------------+--------------+---------------------+------------------+------------------+
| EmployeeID | SupportRepID | Customers Supported | Total Revenue | Average Revenue |
+------------+--------------+---------------------+------------------+------------------+
| 3 | 3 | 146 | 833.040000000001 | 5.70575342465754 |
| 4 | 4 | 140 | 775.400000000001 | 5.53857142857144 |
| 5 | 5 | 126 | 720.160000000001 | 5.71555555555556 |
+------------+--------------+---------------------+------------------+------------------+
После обновления моего кода столбец Поддерживаемые клиенты изменился и я считаю, что предыдущие данные верны. Таким образом, мой средний доход не соответствует новому значению. Почему данные о поддерживаемых клиентах меняются? Как я могу это исправить?