【发布时间】:2014-12-11 09:24:32
【问题描述】:
我一直停留在这个查询上,我必须选择过去 5 年在公司工作的员工。
e-g
in 2010 1 employee Registered so Total Employees in 2010 1
in 2011 2 employees Registered so Total Emloyees in 2013 3
in 2012 4 employees Registered and 1 left so Total Employees in 2012 6
in 2013 5 employees Registered and 2 left So Total Employees in 2013 9
in 2014 No New employee Registered or Left So Same as Same
etc
所以最终员工报告就像
(2010), (2011), (2012), (2013), (2014)
1 3 6 9 9
现在我被困住了如何在 mysql 查询中实现这一点。
我有表 Employee,其中注册了员工信息。
有就业表,如果员工已注册,则分配加入日期,如果离开则分配结束日期。
还有一个性别表来显示一年中有多少男性和多少女性在公司工作。
最后这是我尝试过的查询.. 但这不是正确的查询。我在查询中遗漏了一些东西,但我不太明白。
SELECT MLGT.`gender_type_title`,MLGT.`gender_type_id` AS GenderID,COUNT(E.`gender`) AS TotalGenders,ET.`joining_date`
FROM employee E
INNER JOIN employment ET
ON E.`employee_id` = ET.`employee_id` AND ET.`current` = 1 AND ET.`trashed`=0
INNER JOIN ml_gender_type MLGT
ON E.`gender` = MLGT.`gender_type_id` AND MLGT.`trashed`=0
WHERE E.`trashed`=0 AND ET.`joining_date` >= DATE_SUB(NOW(),INTERVAL 5 YEAR) AND ET.`current`= 1
GROUP BY E.`gender`, YEAR(ET.`joining_date`);
【问题讨论】:
-
所以你想要每年离职的男性和女性员工的总和