永发信息网

誰幫我解決一個数据库問題,一百分給你,只要能解決問題,補給不是人

答案:3  悬赏:70  手机版
解决时间 2021-08-22 17:16
  • 提问者网友:咪咪
  • 2021-08-22 01:00

 现有一个数据库,其中有三张表:

员工(工号,姓名,性别,年龄,部门)

开发项目(项目编号,项目名称)

参与的项目(工号,项目编号,考核评分)

 

请按以下需求写出对应的SQL语句:

     [1] 查询 工号=15946876 的员工信息,包括:姓名、年龄、部门

 

 

 

 

     [2] 统计一共有多少名员工记录

 

 

 

 

     [3] 查询所参与的项目在5个以上(包括5个)的员工的工号,姓名,平均考核评分和参与的项目的个数,结果按平均考核评分降序排序

最佳答案
  • 五星知识达人网友:末日狂欢
  • 2021-08-22 02:26

[1] 查询 工号=15946876 的员工信息,包括:姓名、年龄、部门


答: select 姓名,年龄,部门 from 员工 where 工号=“15946876”    注意:工号是數字的话要改成15946876


     [2] 统计一共有多少名员工记录


答: select count(*) from 员工


    [3] 查询所参与的项目在5个以上(包括5个)的员工的工号,姓名,平均考核评分和参与的项目的个数,结果按平均考核评分降序排序答:


select c.工号,c.姓名,count(c.工号) as 项目个数,avg(p.考核评分 )from 员工 as c


join 参与的项目 as p on p.工号 = c.工号


group by c.工号


having count(c.工号) > 4


order by avg(p.考核评分 ) desc

全部回答
  • 1楼网友:有你哪都是故乡
  • 2021-08-22 04:55

1.select * from 员工 where 工号=15946876  //注意工号如果是字符串类型要加单引号

2.select count(工号) from 员工

3.

select c.工号,count(c.工号) as 项目个数,c.姓名,p.考核评分 from 员工 as c full join 参与的项目 as p on p.工号 = c.工号

group by c.工号,count(c.工号) as 项目个数,c.姓名,p.考核评分

having count(c.工号) > 5

order by p.考核评分 desc

  • 2楼网友:痴妹与他
  • 2021-08-22 03:25

[1] select 姓名,年龄,部门 from 员工 where 工号=15946876    注意:工号是字符串的话要改成'15946876'

[2]select count(*) from 员工

[3]select A.工号,A.姓名,C.Y/C.X,C.X from 员工 A left join (select B.工号,SUM(考核评分) Y,count(B.项目编号) X from 参于的项目 B  group by B.ID) C on C.工号=A.工号 where C.X>=5

我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯