我一直在尝试编写一个查询来显示用户的零点数。
SELECT `profiles`.scanner_id, IFNULL(COUNT(attendance_data.user_id),0) AS AbsentHr
FROM `profiles`
INNER JOIN attendance_data ON attendance_data.dwEnrollNumber=`profiles`.scanner_id
WHERE attendance_data.OutTime='Absent' AND attendance_data.Approved<>1 AND dwEnrollNumber=5059
结果是计数显示为zero
,但扫描程序ID为null
。
我希望扫描仪ID显示5059
。用子查询尝试过这个查询,左连接但到目前为止没有成功。
我该怎么做?
我也试过这个
SELECT COALESCE(COUNT(attendance_data.user_id),0)AS AbsentHr,profiles
。user_id
来自profiles
LEFT OUTER JOIN attendance_data ON profiles
。user_id = attendance_data.user_id
WHERE attendance_data.OutTime ='缺席'和attendance_data.Approved = 0
GROUP BY profiles
。user_id
这让我收回了73条记录。虽然我有80个计数,但它们缺失了。任何想法。