2015-05-30 99 views
-3

我想要统计每个学生的总出勤率。我有两张独立的桌子,我在学生桌上保留了学生的姓名和身份证,并在出席表上保留出席人数和身份证。在参加座位表上,我为每个学生以及1个和0个30个行。我想列出每个学生列出名称的出勤率(总共为0)。应该是什么样的SQL?感谢您的帮助如何计算出勤率

$sql="SELECT * FROM students LEFT JOIN attendance ON students.KategoriID = attendance .KategoriID where WHERE attendance =0 "; 
$sonuc = mysql_query ($sql) ; 
while($satir=mysql_fetch_array($sonuc)) { 
+1

阅读:http://stackoverflow.com/help/how-to-ask – Beginner

+0

提供的表结构和你的努力迄今查询? – Gunaseelan

+0

$ sql =“SELECT * FROM students LEFT JOIN attendance ON students.KategoriID = attendance .KategoriID where WHERE attendance = 0”; $ sonuc = mysql_query($ sql); ($ satir = mysql_fetch_array($ sonuc)) { – bantandor

回答

0

QUERY:

SELECT student.*, count(attendance.attendance) AS absent FROM student 
LEFT JOIN attendance ON student.KategoriID =attendance.KategoriID 
AND attendance.attendance=0 GROUP BY attendance.KategoriID ORDER BY  
student.KategoriID; 

尝试此查询。

检查SQL FIDDLE