2014-06-06 3 views
0

: 이것은 내가 그것을 원하는 것입니다내가 한 쿼리에서이 두 쿼리를 결합하려는

Student ID Student Name ABSENCES 
5  donald duck   21 
3  safedin smith 13 
6  ace ventura   11 

:

SELECT s.student_id, s.name, 
COUNT(a.student_id) as count 
FROM students s 
LEFT JOIN absences a ON a.student_id = s.student_id 
GROUP BY a.student_id, s.name 
ORDER BY count DESC 


SELECT s.unitid, s.unitname, 
COUNT(a.unitid) as count 
FROM subjects s 
LEFT JOIN absences a ON a.unitid = s.unitid 
GROUP BY s.unitid, s.unitname 
ORDER BY count DESC"); 

이 첫 번째 쿼리를 보여줍니다 것입니다 쇼 그래서 첫 번째 쿼리는 학생의 총 결석을 계산 결론으로, 나는 그것이 AB 계산 만들고 싶어

Student ID Unit ID Unit Name Student Name   ABSENCES 
5  1  history  donald duck    21 
3  2  maths  safedin smith    13 
6  3  Crap  ace ventura    11 

그들을 결합 할 때 각 단위에 대한 학생의 sences :

내 결석 테이블이 다음과 같은 열이 있습니다

unitid 
unitname 
:

absence_id Ascending 
student_id 
date 
subject 
unitid 

내 주제 테이블 (이 단위로 테이블을 의미) 다음과 같은 열이 있습니다를

답변

1

편집 된 쿼리.

SELECT s.student_id, sub.unitid, sub.unitname, s.name, 
COUNT(a.student_id) as count 
FROM students s 
LEFT JOIN absences a ON a.student_id = s.student_id 
LEFT JOIN subjects sub ON a.unitid = sub.unitid 
GROUP BY s.student_id, sub.unitid, sub.unitname, s.name 
ORDER BY count DESC 
+0

귀하의 코드가 작동하지 않는데 내 질문을 이해해 주셔서 감사합니다. 오류가 발생했습니다. 유닛 이름이 과목 표에 있고 뜻을 밝히지 않았 음을 의미합니다. –

+0

죄송합니다. 귀하의 질문을 잘못 읽었습니다. 내 검색어를 수정했습니다. 이것이 당신이 찾고있는 것인지 확인하십시오. – Swagata

+0

고맙습니다. 당신은 방금 내 문제를 해결했습니다. @swagata –

관련 문제