就是有两个表,一个是员工的表,里面有与员工的部门,一个是考勤表,里面记录是某员工的早中晚班的考勤情况,
有这样的sql语句吗?就是求某个部门下的所有的员工的早中晚班的记录总数employe表
id depid
work表
id employeid zaoban zhongban wanban
有这样的sql语句吗?就是求某个部门下的所有的员工的早中晚班的记录总数employe表
id depid
work表
id employeid zaoban zhongban wanban
解决方案 »
- 在一台十几万的服务器上和一台64位PC机上,服务器的速度还要慢,请高手解答
- ORA-00984: column not allowed here问题,在线等,急!!!!!!!!!!!!
- .Net环境下使用OracleParameter问题
- 表被DROP掉了,可以恢复吗?
- sqlplus联不上Oracle 9i
- 一简单的SQL请教高手!(再线等!)
- 我想问一下谁有T.O.A.D.6.3.2.16版本可用的注册码?
- 求教关于数据库TRIGGER的问题
- 急救:关于OEM中JOB执行的验证错误
- 求oracle 10g RAC 10204_vista_w2k8_x64_production_crs.zip
- 如何查看输出的变量?
- 请问我使用联机热备份后,备份的文件到底放在哪里.我看备份向导里面都没有让我指定路境吗?如果我要备份到磁带机里面,我有如何操作呢?
work表
id employeid ban ban字段可能是早中晚班,谢谢各位了
select count(t1.ban) from work t1 where t1.id in (select t2.id from employe where t2.depid = 'XXX');
from employe 1,work b
where a.id=b.id
group by a.depid
这样可以吗?
select t1.ban, count(t1.ban) from work t1 where t1.id in (select t2.id from employe where t2.depid = 'XXX') group by t1.ban;
SELECT a.depid, SUM(CASE WHEN bancid = 1 THEN 1 ELSE 0 END) AS banc1,
SUM(CASE WHEN bancid = 2 THEN 1 ELSE 0 END) AS banc2,
SUM(CASE WHEN bancid = 3 THEN 1 ELSE 0 END) AS banc3
FROM t_Employe a LEFT JOIN
t_workcheck b ON a.employeid = b.employeid
GROUP BY a.depid
什么是ban字段可能是早中晚班?
如果此人早中晚都上了
字段的值如何写?
还是说得分三行写?