У меня есть три существующие таблицы SQL, которые мы будем называть «командами», «милями» и «гонщиками». Оставляя пух, их структура выглядит так:
Table: teams
------------+-------------+---------+
| team_name | captains_id | team_id |
------------+-------------+---------+
| superbads | 11 | 1 |
| superflys | 12 | 2 |
------------+-------------+---------+
Table: riders
--------------+-----------+----------+
| rider_name | team_id | rider_id |
--------------+-----------+----------+
| donatello | 1 | 10 |
| leonardo | 1 | 11 |
| michelangelo| 2 | 12 |
| raphael | 2 | 13 |
--------------+-----------+----------+
Table: miles
--------------+-----------+----------+
| rider_id | miles | id |
--------------+-----------+----------+
| 10 | 100 | 1 |
| 10 | 62 | 2 |
| 11 | 110 | 3 |
| 11 | 100 | 4 |
| 12 | 8 | 5 |
| 12 | 22 | 6 |
| 13 | 29 | 7 |
| 13 | 2 | 8 |
--------------+-----------+----------+
Мне нужно вернуть список команд с общим количеством миль, сгенерированных этой командой (мне также нужно вернуть имя капитана команды, но это немного проще).
Сложность в том, что мне нужно накапливать мили на гонщиках, суммировать поле «миль», а затем каким-то образом присоединяться к ним в командах.
Изменение структуры таблицы в значительной степени отсутствует, так как это существующее приложение. Это среда LAMP, поэтому манипулирование массивами PHP после запроса является опцией, если это необходимо.