【发布时间】:2023-03-14 02:02:01
【问题描述】:
我希望在我的表中添加一个工资总额,该表也是基于多个列的选择。我坚持的代码如下:
SELECT country, state1, city, street, ID, lastname + ', ' + firstname AS 'Name', SUM(salary) AS 'AnnualSalary'
FROM geography1 JOIN address ON street = streetname JOIN employee ON ID = PID
WHERE termdate IS NULL
GROUP BY country, state1, city, street, gender, lastname, firstname
UNION ALL
SELECT COALESCE(country,'TOTAL'), NULL AS state1, NULL AS city, NULL AS street, NULL AS gender, NULL AS lastname, NULL AS lastname, SUM(salary) AS 'AnnualSalary'
FROM geography1 JOIN address ON street = streetname JOIN employee ON ID = PID
WHERE termdate IS NULL
GROUP BY ROLLUP(country);
执行上述查询以包括按国家总计分组的总计和其他行,但随后的其他列为空。有没有办法重写它以便只有一个总计行?
对于我对这件事如此陌生,我提前道歉。我看过其他问题,这就是我能够拼凑起来的。谢谢!
【问题讨论】:
标签: sql tsql grouping union rollup