随笔 - 384  文章 - 0  评论 - 0  阅读 - 13万

力扣1075(MySQL)-项目员工Ⅰ(简单)

题目:

项目表 Project: 

 员工表 Employee

请写一个 SQL 语句,查询每一个项目中员工的 平均 工作年限,精确到小数点后两位。

查询结果的格式如下:

 

 

 解题思路:

建表语句:

1 Create table If Not Exists Project_1075 (project_id int, employee_id int);
2 Create table If Not Exists Employee_1075 (employee_id int, name varchar(10), experience_years int);
3 Truncate table Project_1075;
4 insert into Project_1075 (project_id, employee_id) values ('1', '1'), ('1', '2'), ('1', '3'),('2', '1'), ('2', '4');
5 Truncate table Employee_1075;
6 insert into Employee_1075 (employee_id, name, experience_years) values ('1', 'Khaled', '3'),('2', 'Ali', '2'),('3', 'John', '1'),('4', 'Doe', '2');

通过表联结获取各项目的工作年限,然后以项目id(project_id)分组,聚合函数计算平均年限,用round()来保留小数位数。

1 select project_id,round(avg(experience_years),2) as average_years
2 from project_1075 a
3 join employee_1075 b
4 on a.employee_id = b.employee_id
5 group by project_id;

posted on   我不想一直当菜鸟  阅读(31)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

点击右上角即可分享
微信分享提示