Я пытаюсь получить данные из нескольких таблиц и провести суммирование. Структура данных выглядит следующим образом:
TransHeader
- Trandate
- TranNbr
- Единицы измерения
TransDetail
- TranNbr
- TranWeight
- TranTime
Для каждого TransHeader существует несколько записей TransDetail.
Существует множество данных, поэтому я пытаюсь подвести итог, чтобы получить вывод, подобный следующему:
Дата, Общее количество единиц, Общий вес, Общее время
где каждая строка будет представлять итоги по дате.
Вот моя неудачная попытка:
select th.TranDate, sum(th.Units), sum(td.TranWeight), sum(td.TranTime)
from TransHeader th join
TransDetail td
on td.TranNbr = th.TranNbr
group by th.TranDate;
Он отлично работает для TranWeight и TranTime, но единицы оказываются чрезмерно раздутыми, поскольку суммируют единицы для каждого попадания в таблицу TransDetail.