一个比较麻烦的SQL视图

Posted on 2007-02-24 15:19  海滨  阅读(294)  评论(0编辑  收藏  举报

笔试时遇到如下一道SQL题:
有以下三个表,结构如下:
1.职员表:
职员ID   部门ID   职员姓名
2.部门表:
部门ID   部门名称
3.工资表:
序号ID   职员ID   月份   工资

请设计一个视图,查找出研发部2006年1月至2006年6月 工资最高的职员姓名,工资总额及平均工资



create view myView
as
select top 1 a.职员姓名 as 姓名,sum(c.工资) as 工资总额,avg(c.工资) as 平均工资
from 职员表 as a inner join 部门表 as b
on a.部门ID=b.部门ID
inner join 工资表 as c
on a.职员ID=c.职员ID
where b.部门名称='研发部' and c.月份 between '2006-01-01'and'2006-06-30'
group by a.职员姓名
order by 工资总额 desc

Copyright © 2024 海滨
Powered by .NET 8.0 on Kubernetes