宜昌市网站建设_网站建设公司_Angular_seo优化
2025/12/17 6:33:17 网站建设 项目流程

员工表:Employee

+---------------+---------+ | Column Name | Type | +---------------+---------+ | employee_id | int | | team_id | int | +---------------+---------+ employee_id 字段是这张表的主键(具有唯一值的列) 表中的每一行都包含每个员工的 ID 和他们所属的团队。

编写解决方案以求得每个员工所在团队的总人数。

返回结果表无顺序要求

返回结果格式示例如下:

示例 1:

输入:Employee Table: +-------------+------------+ | employee_id | team_id | +-------------+------------+ | 1 | 8 | | 2 | 8 | | 3 | 8 | | 4 | 7 | | 5 | 9 | | 6 | 9 | +-------------+------------+输出:+-------------+------------+ | employee_id | team_size | +-------------+------------+ | 1 | 3 | | 2 | 3 | | 3 | 3 | | 4 | 1 | | 5 | 2 | | 6 | 2 | +-------------+------------+解释:ID 为 1、2、3 的员工是 team_id 为 8 的团队的成员, ID 为 4 的员工是 team_id 为 7 的团队的成员, ID 为 5、6 的员工是 team_id 为 9 的团队的成员。

思路:

这段 SQL 用到了分析函数(窗口函数),作用是:
👉在不分组的情况下,给每一行员工数据算出其所在团队的人数。

代码:

select employee_id, count(*) over( partition by team_id) as team_size from employee

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询