You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在SQL Server中按多维度分组计算员工总数并填充表

在SQL Server中实现多维度分组求和并填充结果

你可以直接使用SUM() OVER (PARTITION BY)语法,它完全支持多维度分组——只需要在PARTITION BY子句中用逗号分隔多个分组字段即可。针对你的需求,以下是具体的实现代码:

SELECT
    Municipality,
    [Company Type ID],
    [Number of Employees],
    -- 同一市政下的员工总数:按Municipality单维度分区求和
    SUM([Number of Employees]) OVER (PARTITION BY Municipality) AS [Total employees in same municipality],
    -- 同一市政+同一公司类型下的员工总数:按两个字段多维度分区求和
    SUM([Number of Employees]) OVER (PARTITION BY Municipality, [Company Type ID]) AS [Total Employees in same company ID and same Municipality]
FROM
    YourTableName; -- 替换为你的实际表名

代码说明

  • PARTITION BY Municipality:将数据按市政ID分组,计算每个分组内的员工总数,结果会填充到该分组的每一行对应列中。
  • PARTITION BY Municipality, [Company Type ID]:同时按市政ID和公司类型ID两个维度交叉分组,计算每个细分分组内的员工总数。

执行结果验证

用你的测试数据执行上述查询后,会得到与期望完全一致的结果:

MunicipalityCompany Type IDNumber of EmployeesTotal employees in same municipalityTotal Employees in same company ID and same Municipality
032121033202217
0321210332122217
032121033222217
032121033232217
03212103334225
03212103331225
031331055446359
0313310554556359
03133105554634

内容的提问来源于stack exchange,提问作者Praanto

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.10 00:00:26