我正在建立一个考勤管理系统,用户/雇员每天可以标记一次他们的考勤。管理员可以查看员工的整体出勤情况。我必须以表格形式显示。
我在SSMS中创建了2个表:tblUser
和tblAttendence
。 tblUser
包含RegNo
(int
),Name
(varchar
)和JoiningDate
(date
)。 tblAttendence
具有DateAndTime
(datetime
)和RegNo
(int
)作为列。因此,每当用户打开应用程序并标记出勤时,就会将其与当前的DateTime和用户的RegNo一起记录在tblAttendance
中。
现在,我必须使用DataGridView
并将其显示为RegNo
,Name
和Attendance
的列(这是在{{ 1}}对应于tblAttendance
)
可以做到吗?我似乎找不到解决方法。有办法吗?
答案 0 :(得分:1)
您可以使用以下方式获取用户的出勤计数
SELECT u.RegNo, u.Name, Count(t.RegNo) AS Attendance
FROM tblUser u JOIN tblAttendance t ON u.RegNo = t.RegNo
GROUP BY u.RegNo, u.Name
,如果您喜欢订单,可以添加
ORDER BY Count(t.RegNo) DESC