У меня есть четыре таблицы с данными. Я хочу поместить соответствующие итоговые столбцы из каждой в отдельный столбец. Однако я хотел бы соответствовать dealerId
. Таким образом, если в Таблице 1 и Таблице 3 есть одинаковые идентификаторы дилера, они должны быть одной строкой.
Таблица 1
dealerId | t1 Total Amount
---------+---------------
1 | 123
2 | 456
Таблица 2
dealerId | t2 Total Amount
---------+----------------
3 | 111
4 | 222
5 | 333
Таблица 3
dealerId | t3 Total Amount
---------+----------------
1 | 555
3 | 565
6 | 888
Таблица 4
dealerId | t4 Total Amount
---------+----------------
1 | 88
2 | 99
3 | 11
Желаемый результат
dealerId | t1Total Amount | t2Total Amount | t3 Total Amount | t4 Total Amount
---------+----------------+----------------+-----------------+-----------------
1 | 123 | null | 555 | 88
2 | 456 | null | null | 99
3 | null | 111 | 565 | 11
4 | null | 222 | null | null
5 | null | 333 | null | null
6 | null | null | 888 | null
Я в основном создал представления (я не знаю, является ли это правильный термин для этого) и попытался ОБЪЕДИНЯТЬ ВСЕ их, но это дает мне только один столбец со всеми итогами.
SELECT *
FROM
(
SELECT o.DealerId, Sum(oi.Amount) as T1_Total
FROM ....
) AS T1
UNION ALL
SELECT *
FROM
(
SELECT o.DealerId, Sum(oi.Amount) as T2_Total
FROM ....
) AS T2
UNION ALL
...
-- repeat for T3 and T4