我正在爲我的學校設計一個程序來保留學生出勤記錄。到目前爲止,我有以下查詢工作正常,現在我想添加一個IF語句來執行一個百分比操作時,給出了一定的條件。正因爲如此,該查詢使用INNER JOIN
搜索來自兩個不同的表(oxadmain和stuattend)數據和它的顯示結果以及對結果表:嵌套計數()函數與百分比操作
SELECT o.name
, o.year
, o.photoID
, o.thumbs
, s.ID
, s.studid
, s.date
, s.teacher
, s.subject
, s.attendance
FROM stuattend s
JOIN oxadmain o
ON s.studid = o.stuid
ORDER
BY name ASC
現在我想以一個「如果」加陳述
1)當stuattend.attendance =缺席時計算出在任何給定時間段內學生缺勤的百分比,然後將該(%)值存儲在「百分比」中並且2)ELSE分配「百分比」的值爲100%。
到目前爲止,我一直在嘗試用下面的:
<?php $_GET['studentID'] = $_row_RepeatedRS['WADAstuattend']; ?>
SELECT oxadmain.name , oxadmain.year , oxadmain.photoID , oxadmain.thumbs , stuattend.ID , stuattend.studid , stuattend.date , stuattend.teacher, stuattend.subject , stuattend.attendance
CASE
WHEN stuattend.attendance = Absent THEN SELECT Count (studentID) AS ClassDays, (SELECT Count(*) FROM stuattend WHERE studentID = stuattend.studid AND Absent = 1) AS ClassAbsent, ROUND ((ClassAbsent/ClassDays)*100, 2) AS Percentage
ELSE
Percentage = 100
END
FROM stuattend INNER JOIN oxadmain ON stuattend.studid=oxadmain.stuid
ORDER BY name ASC
就如何做好這一點有什麼建議?
感謝您的關注
你在做什麼設置'$ _GET'元素的值?這是錯誤的。而且,該代碼行與選擇查詢有什麼關聯 - 您在查詢中根本沒有使用任何PHP變量。 – Simba
Simba:你說得對。 $ _GET元素在那裏沒有用處。關於如何使用正確的count()函數來查找每個學生的總課堂日和總休息日的任何建議? (特別是缺席的日子),以便以後我可以得到學生在任何特定時間點缺勤的比例?感謝您的關注。 – Salaroche