Мой вопрос о My SQL:
У меня есть таблица, в которую пользователи вводят данные отчетов о времени, называемые time_report.Каждый time_report вводится с сервисным кодом, каждый из которых имеет различное значение и включает в себя начало, остановку, время и общее количество.
Вот пример данных, введенных в таблицу time_report.
t_id Date User Customer Service Closing System Part Start Stop Total
53 2011-05-02 13 0 48 4 0 0 09:00 17.15 8.15
54 2011-05-03 13 0 49 4 0 0 09:00 17:00 8
55 2011-05-04 13 0 48 4 0 0 09:00 17.15 8:15
61 2011-05-04 1 0 52 4 0 0 09:00 17.15 8:15
62 2011-05-05 1 0 48 4 0 0 09:00 17.15 8:15
Я пытаюсь выполнить запрос для извлечения 3 частей информации.
user ( the user is the foreign key to users.user_id)
sum(total) per user.
sun(total) per user where service < 49
Utilization Percentage: (This will be calculated by dividing the 2 totals )
Служба - это внешний ключ для servicecodes.s_id
Когда я пытаюсь выполнить запрос кполучить сумму (итого, все работает нормально, но я не могу сгруппировать информацию вместе
mysql> SELECT Users.full_name,sum(total)
-> FROM time_report, users
-> WHERE time_report.User = users.user_id
-> AND date
-> BETWEEN '2011-0502'
-> AND '2011-05-11'
-> GROUP BY User;
+-----------------+------------+
| full_name | sum(total) |
+-----------------+------------+
| Cian Higgins | 26 |
| Wallace Ward | 23 |
| jason ward | 42 |
| Thomas Woods | 72 |
| Peter Jones | 49 |
| fintan corrigan | 40 |
| David Jones | 35 |
| January Jones | 23 |
| Joe Johnson | 24 |
+-----------------+------------+
9 rows in set, 1 warning (0.09)
Когда я запускаю запрос со службой <49 </p>
SELECT Users.full_name,sum(total) AS Productive
FROM time_report, users
WHERE time_report.User = users.user_id
AND date
BETWEEN '2011-0502'
AND '2011-05-11'
AND Service < 49
GROUP BY User;
+-----------------+------------+
| full_name | Productive |
+-----------------+------------+
| Cian Higgins | 14 |
| Wallace Ward | 23 |
| jason ward | 33 |
| Thomas Woods | 53 |
| Peter Jones | 41 |
| fintan corrigan | 32 |
| David Jones | 27 |
| January Jones | 23 |
| Joe Johnson | 24 |
+-----------------+------------+
9 rows in set, 1 warning (0.03 sec)
Но если я пытаюсьи присоединяюсь к отчетам, я получаю ошибки .... также, если я пытаюсь запустить его как подзапрос, я получаю ошибки
Пример:
SELECT Users.full_name, sum( total )
FROM time_report, users
WHERE time_report.User = users.user_id
AND date
BETWEEN '2011-0502'
AND '2011-05-11'
GROUP BY User
UNION
SELECT Users.full_name, sum( total ) AS Productive
FROM time_report, users
WHERE time_report.User = users.user_id
AND date
BETWEEN '2011-0502'
AND '2011-05-11'
AND Service <49
GROUP BY User
это дает все результаты в одномстрока
full_name sum(total)
Cian Higgins 26
Wallace Ward 23
jason ward 42
Thomas Woods 72
Peter Jones 49
fintan corrigan 40
David Jones 35
January Jones 23
Joe Johnson 24
Cian Higgins 14
jason ward 33
Thomas Woods 53
Peter Jones 41
fintan corrigan 32
David Jones 27