How to get result table by calculate multirow?
Name Type Value ------------------------------ Name1 Plus 5000 Name1 Minus 1000 Name2 Plus 3000 Name2 Minus 2000
Desired result:
Name Value(Plus-Minus) ------------------------------ Name1 4000 Name2 1000
Advertisement
Answer
You can use conditional aggregation:
SELECT Name, SUM(CASE WHEN Type = 'Plus' THEN Value WHEN Type = 'Minus' THEN - Value ELSE 0 END) as total FROM t GROUP BY Name;