您好,欢迎来到步遥情感网。
搜索
您的当前位置:首页mysql查询每个月入职人数_按年份统计入职人数sql语句

mysql查询每个月入职人数_按年份统计入职人数sql语句

来源:步遥情感网

按年份统计入职人数sql语句

/*

员工编号 部门 入职时间 离职时间(离职空值即没有请辞)

123 00 20050203 20070101

124 00 20071231 20080504

125 00 20070131 20070805

126 00 20070205

127 01 20080304 20090101

。。。

我要得到的查询结果是

部门 年份 1月份 2月份 3月份 ... 年总人数

00 2007 0 2 2 ... 2

00 2008 2 2 3 ... 3

00 2009 1 1 1 ... 1

01 2007 0 2 2 ... 2

。。。。。

根据入职时间和离职时间统计每个月和每一年的在职员工人数

条件:入职时间如果为20071231则不计入07年,离职时间为20080101则不计入08年数据

我现在要统计07---09年之间的数据。

*/

--07年

SELECT LEFT(部门,3) AS '部门',(case LEFT(入职时间,4) WHEN '2007' THEN '2007' ELSE '2007' END) AS '07年',COUNT(MV001) AS '人数' FROM CMSMV

WHERE 入职时间< '20071231' AND (离职时间 > '20070101' OR 离职时间='' ) AND 离职时间<>入职时间

GROUP BY LEFT(入职时间,4),LEFT(部门,3)

ORDER BY LEFT(入职时间,4),LEFT(部门,3)

--08年

SELECT LEFT(部门,3) AS '部门',(case LEFT(入职时间,4) WHEN '2008' THEN '2008' ELSE '2008' END) AS '08年',COUNT(MV001) AS '人数' FROM CMSMV

WHERE 入职时间< '20081231' AND (离职时间 > '20080101' OR 离职时间='' ) AND 离职时间<>入职时间

GROUP BY LEFT(入职时间,4),LEFT(部门,3)

ORDER BY LEFT(入职时间,4),LEFT(部门,3)

--09年

SELECT LEFT(部门,3) AS '部门',(case LEFT(入职时间,4) WHEN '2009' THEN '2009' ELSE '2009' END) AS '09年',COUNT(MV001) AS '人数' FROM CMSMV

WHERE 入职时间< '20091231' AND (离职时间 > '20090101' OR 离职时间='' ) AND 离职时间<>入职时间

GROUP BY LEFT(入职时间,4),LEFT(部门,3)

ORDER BY LEFT(入职时间,4),LEFT(部门,3)

本条技术文章来源于互联网,如果无意侵犯您的权益请点击此处反馈版权投诉

本文系统来源:php中文网

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- obuygou.com 版权所有 赣ICP备2024042798号-5

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务