select x.*,(case when y.迟到次数 is null then 0 else y.迟到次数)迟到次数 end from (select * from 被考核员工 a,部门 b,中心 c where a.所属部门 = b.部门编号 and b.所属中心 = c.中心编号)x left join (select 员工编号,sum(迟到(或早退)次数) as 迟到次数 from 违规记录 group by 员工编号)y on x.员工编号 = y.员工编号//其他情况按照 迟到次数 以此类推、就不全部写出来了
(select * from 被考核员工 a,部门 b,中心 c where a.所属部门 = b.部门编号 and b.所属中心 = c.中心编号)x
left join
(select 员工编号,sum(迟到(或早退)次数) as 迟到次数 from 违规记录 group by 员工编号)y
on x.员工编号 = y.员工编号//其他情况按照 迟到次数 以此类推、就不全部写出来了
参考一下这个贴子的提问方式http://bbs.csdn.net/topics/320211382
1. 你的 create table xxx .. 语句
2. 你的 insert into xxx ... 语句
3. 结果是什么样,(并给以简单的算法描述)
4. 你用的数据库名称和版本(经常有人在MS SQL server版问 MySQL)
这样想帮你的人可以直接搭建和你相同的环境,并在给出方案前进行测试,避免文字描述理解上的误差。