请教如何用MS-SQL2005编写统计人员参加各项活动的次数与参加活动的累计时间?

bluesky98 2009-05-27 03:01:44
这里有两个表,一张表是人员信息表ryxx,里面有人员姓名xm、个人编号grbh、性别xm、参加工作时间cjgzsj等字段;
另一张表是活动记录表htjl,里面有活动类型、参加人员的个人编号grbh、参加活动的日期rj、每次参加活动的时间htsj,活动内容hdlr等字段。
要求:显示每个人的累计活动次数及累计活动时间。
...全文
166 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
arrow_gx 2009-05-27
  • 打赏
  • 举报
回复
select a.grbh,b.xm,count(a.grbh) as '活动次数',sum(b.htsj) as '累计活动时间'
from htjl a join ryxx b on a.grbh=b.grbh
where b.xm='男'
group by a.grbh,b.xm
bluesky98 2009-05-27
  • 打赏
  • 举报
回复
谢谢各位,好好学习下。另外,再请教一下,如果我只将符合一定条件的部分人员进行统计,如将性别为男性的人员统计出来,再如何编写语句?
lg3605119 2009-05-27
  • 打赏
  • 举报
回复

select a.xm,
sum(case when b.grbh is null then 0 else 1 end) as 累计活动次数,sum(b.htsj) as 累计活动时间
from ryxx a left join htjl b on a.grbh = b.grbh
group by a.xm

lg3605119 2009-05-27
  • 打赏
  • 举报
回复

select sum(case when b.grbh is null then 0 else 1 end) as 累计活动次数,sum(b.htsj) as 累计活动时间
from ryxx a left join htjl b on a.grbh = b.grbh
group by a.xm
arrow_gx 2009-05-27
  • 打赏
  • 举报
回复
select a.grbh,b.xm,count(a.grbh) as '活动次数',sum(b.htsj) as '累计活动时间'
from htjl a join ryxx b on a.grbh=b.grbh
group by a.grbh,b.xm
arrow_gx 2009-05-27
  • 打赏
  • 举报
回复
select a.grbh,b.xm count(a.grbh) as '活动次数',sum(b.htsj) as '累计活动时间'
from htjl a join ryxx b on a.grbh=b.grbh
group by a.grbh,b.xm

34,590

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧