Untitled*
You must execute the code again to save those values in the database.
CounterpartyBarBuzzTotalCol1Col2Col3Col4
fizz20.0020.0040.0039.001.00040.00
foo40.00.0040.0039.001.00040.00
Total60.0020.0080.0078.002.00080.00

CounterpartybarbuzzTotalCol1Col2Col3Col4
fizz20.0020.0040.0039.001.00040.00
foo40.00.0040.0039.001.00040.00
Total60.0020.0080.0078.002.00080.00

(8 rows affected)

(8 rows affected)

(3 rows affected)

SUM(CASE WHEN Product = 'bar' THEN Value1 ELSE 0 END) AS [bar],
SUM(CASE WHEN Product = 'buzz' THEN Value1 ELSE 0 END) AS [buzz],

SUM(CASE WHEN Product = 'bar' THEN Value1 ELSE 0 END) AS [bar],
SUM(CASE WHEN Product = 'buzz' THEN Value1 ELSE 0 END) AS [buzz],


SELECT
CASE WHEN GROUPING(Counterparty) = 0 THEN Counterparty ELSE 'Total' END AS Counterparty,
SUM(CASE WHEN Product = 'bar' THEN Value1 ELSE 0 END) AS [bar],
SUM(CASE WHEN Product = 'buzz' THEN Value1 ELSE 0 END) AS [buzz],
SUM(Value1) AS Total,
SUM(Value2) AS Col1,
SUM(Value1 - Value2) AS Col2,
0 AS Col3,
SUM(Value1) - 0 AS Col4
FROM (
SELECT *, Value AS Value1, 0 * Value AS Value2 FROM Table1
UNION ALL
SELECT *, 0 * Value AS Value1, Value AS Value2 FROM Table2
) U
GROUP BY Counterparty WITH ROLLUP
ORDER BY GROUPING(Counterparty), Counterparty;


(3 rows affected)