leetcode 1303 求团队人数(postgresql)

需求

员工表:Employee

±--------------±--------+

| Column Name | Type |

±--------------±--------+

| employee_id | int |

| team_id | int |

±--------------±--------+

employee_id 字段是这张表的主键,表中的每一行都包含每个员工的 ID 和他们所属的团队。

编写一个 SQL 查询,以求得每个员工所在团队的总人数。

查询结果中的顺序无特定要求。

查询结果格式示例如下:

Employee Table:

±------------±-----------+

| employee_id | team_id |

±------------±-----------+

| 1 | 8 |

| 2 | 8 |

| 3 | 8 |

| 4 | 7 |

| 5 | 9 |

| 6 | 9 |

±------------±-----------+

Result table:

±------------±-----------+

| 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 复制代码
with t1 as (
select team_id,count(1) as num
from employee
group by team_id
)
select e.employee_id,num
from employee e,t1
where e.team_id=t1.team_id
;
相关推荐
晚风_END1 小时前
Linux|操作系统|zfs文件系统的使用详解
linux·运维·服务器·数据库·postgresql·性能优化·宽度优先
Java成神之路-6 小时前
【LeetCode 刷题笔记】34. 在排序数组中查找元素的第一个和最后一个位置 | 二分查找经典刷题题解
算法·leetcode
晚风_END7 小时前
Linux|操作系统|最新版openzfs编译记录
linux·运维·服务器·数据库·spring·中间件·个人开发
dLYG DUMS7 小时前
DBeaver连接本地MySQL、创建数据库表的基础操作
数据库·mysql
kumat8 小时前
分享-搭建个人系统 MySelfSys
sql·系统
苍煜8 小时前
MySQL分库分表和ES到底怎么选?
数据库·mysql·elasticsearch
茉莉玫瑰花茶8 小时前
Qt 信号与槽 [ 1 ]
开发语言·数据库·qt
czlczl200209259 小时前
松散索引扫描/跳跃索引扫描
数据库·mysql·性能优化
星马梦缘10 小时前
数据库作战记录 实验7、8
数据库·sql·oracle
安逸sgr11 小时前
Hermes Agent + Obsidian 打造第二大脑(六):分层记忆系统的设计逻辑——L0/L1/L2/L3 四层记忆详解
数据库·agent·知识库·hermes·hermesagent