У меня много проблем со сценарием, который, как я думаю, некоторые из вас могли встретить.Добавить значения для группировки столбца
(все, что связано с бизнес-поездками, двумя столами, заполненными платежами, совершаемыми в командировках, а другое - бизнес-поездками, поэтому у первого есть больше строк, чем у другого (есть больше платежей, которые произошло чем Trips)) у меня есть две таблицы, таблица а и В. Таблица
Таблица A выглядит следующим образом
| TableA_ID | TableB_ID | PaymentMethod | ValuePayed |
| 52 | 1 | Method1 | 23,2 |
| 21 | 1 | Method2 | 23,2 |
| 33 | 2 | Method3 | 23,2 |
| 42 | 1 | Method2 | 14 |
| 11 | 14 | Method1 | 267 |
| 42 | 1 | Method2 | 14,7 |
| 13 | 32 | Method1 | 100,2 |
Таблица B выглядит следующим образом
| TableB_ID | TravelExpenses | OperatingExpense |
| 1 | 23 | 12 |
| 1 | 234 | 24 |
| 2 | 12 | 7 |
| 1 | 432 | 12 |
| 14 | 110 | 12 |
Я пытаюсь создать меру Table (Таблица C), который выглядит следующим образом:
| TableC_ID | TypeofCost | Amount |
| 1 | Method1 | 100,2 |
| 2 | Method2 | 52 |
| 3 | TravelExpenses | 7 |
| 4 | OperatingExpense| 12 |
| 5 | Method3 | 12 |
| 6 | OperatingExpense| 7 |
| 7 | Method3 | 12 |
(результаты Суммы должны быть суммированы и Columns - Сотрудник, месяц, TypeofCost Сгруппированных)
Так что я в значительной степени должны группе не только PaymentMethod
, которые я получаю из таблицы а, , но и вставить новые значения в группе (TravelExpenses
и OperatingExpense
)
Может ли кто-нибудь дать мне любую идею о том, как это можно сделать в SQL?
Вот что я пытался до сих пор
SELECT PaymentMethod as TypeofCost
,Sum(ValuePayed) as Amount
FROM TableA Left Outer Join TableB on TableA.TableB_ID = TableB.TableB_ID
GROUP PaymentMethod
UNION
SELECT 'TravelExpenses' as TypeofCost
,Sum(TableB.TravelExpenses) as Amount
FROM TableA Left Outer Join TableB on TableA.TableB_ID = TableB.TableB_ID
GROUP PaymentMethod
UNION
SELECT 'OperatingExpense' as TypeofCost
,Sum(TableB.OperatingExpense) as Amount
FROM TableA Left Outer Join TableB on TableA.TableB_ID = TableB.TableB_ID
GROUP PaymentMethod
вот результат этого (например, взятых из одного случая для операционных расходов) 6,00 - 12,00-- 24,0 0-- 36,00-- 48,00 - (отдельные строки) в то время как значение реального суммирования, которое ожидается: 36,00 – gberisha
Большое спасибо за помощь – gberisha