oracle,按任务单完成状态来统计每个人的任务单数量?

对岸 发布于 2015/06/18 14:39
阅读 1K+
收藏 1

1.任务单表(taskinfo),字段有:计划完成日期(enddate),实际完成日期(factenddate),用户名(username)等

2.按任务单完成状态来统计每个人每月的任务单数量
说明:任务单完成状态,是由实际完成日期与计划完成日期比较得来的,
1)实际完成日期小于计划完成日期,表示提前完成
2)等于,表示按时完成
3)大于,表示延期完成

3.最后的统计结果应该是,
用户名 提前完成 按时完成 延期完成
XXX 数量 数量 数量
XXX 数量 数量 数量
XXX 数量 数量 数量
……

加载中
0
如比如比
如比如比

select username, sum(case when 计划日>提交日 then 1 else 0 end) as 提前完成,

sum(case when 计划日 =提交日 then 1 else 0 end) as 按时完成,

sum(case when 计划日 <提交日 then 1 else 0 end) as 延期完成

from 任务单表 group by username, order by username;

如比如比
如比如比
回复 @B_qxzb : 那不好意思,可以结贴了么?
对岸
对岸
回复 @茶壶 : 可以。
如比如比
如比如比
能问一下,用这个可以么?
0
如比如比
如比如比

引用来自“茶壶”的评论

select username, sum(case when 计划日>提交日 then 1 else 0 end) as 提前完成,

sum(case when 计划日 =提交日 then 1 else 0 end) as 按时完成,

sum(case when 计划日 <提交日 then 1 else 0 end) as 延期完成

from 任务单表 group by username, order by username;

修改了,不能马上表示
如比如比
如比如比
回复 @B_qxzb : 答案的内容改了,不能马上表示,引用一下就都正常了,估计是那个j2catche?的原因吧。呵呵。
对岸
对岸
什么不能马上表示?
返回顶部
顶部