计数员工出勤 [英] counting employee attendance

查看:137
本文介绍了计数员工出勤的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想写一个计算员工出勤率的声明,并执行 id 姓名他在过去3个月工作,通过计数第1,2和3月的 NewTimeAttendance 上的重复 id

I am trying to write a statement for counting the employees attendance and execute their id , name and the days that he has working on the last 3 months by counting the duplicate id on NewTimeAttendance for month 1, 2 and 3.

我试图计数:

Select COUNT(employeeid)
  from NewTimeAttendance
 where employeeid=1 and (month=1 or month = 2 or month = 3)


b $ b

这是绝对的工作,但只是一个员工。

This is absolutely working, but just for one employee.

第二次尝试:

SELECT COUNT(NewEmployee.EmployeeID)
  FROM NewEmployee INNER JOIN NewTimeAttendance 
    ON NewEmployee.EmployeeID = NewTimeAttendance.EmployeeID
   and (month=1 or month =2 or month = 3)

这是工作,但它计数所有员工,每个 EmployeeId EmployeeName 天数

This is working, but it counts all employees and I want it to execute each EmployeeId, EmployeeName and number of days as new record.

最后一次尝试:(在看到代码之前...是错误的...但我在尝试)

Last try: (before you see the code ... it is wrong ..but I am trying)

for i in  0..27 loop
   SELECT COUNT(NewEmployee.EmployeeID),NewEmployee.EmployeeId,EmployeeName
     FROM NewEmployee INNER JOIN NewTimeAttendance 
       ON NewEmployee.EmployeeID(i) = NewTimeAttendance.EmployeeID
      and (month=1 or month =2 or month = 3)
end loop

我真的需要帮助...提前感谢。

I really need help...thanks in advance.

推荐答案

您需要一个 GROUP BY 函数,请尝试:

You need a GROUP BY function, try:

SELECT COUNT(NewEmployee.EmployeeID), NewEmployee.EmployeeId,EmployeeName
 FROM NewEmployee INNER JOIN NewTimeAttendance 
  ON NewEmployee.EmployeeID = NewTimeAttendance.EmployeeID
   and (month=1 or month =2 or month = 3)
GROUP BY NewEmployee.EmployeeID, EmployeeName

这篇关于计数员工出勤的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆