2012-04-12 10 views
1

Ich habe eine Tabelle für abwesende, und diese Tabelle speichert die studentids von denen, die abwesend waren.sql count mit inner join

Von dieser Tabelle musste ich Gesamtpräsentiert und Gesamtabwesende finden, dafür bin ich gerade der Abteilungstabelle beigetreten, die die maximale Kapazität einer bestimmten Abteilung enthält.

Für diese meine Frage war

select COUNT(Attendance.studentid) as Absentees 
     ,Sections.Max-count(studentid) as Presentees 
from Attendance 
inner join Students 
on students.StudentId=Attendance.StudentId 
inner join Sections 
on Sections.CourseId=students.CourseId 
group by Sections.Max 

Seine Arbeit in Ordnung, auf die gleiche Weise wie kann ich das Geschlecht weise Beschenkten/Abwesenden finden ...... Geschlecht Spalte in Studenten-Tabelle ist, kann mir jemand geben eine Idee, danke im voraus hinzufügen

Antwort

5

einfach die gender-Spalte auf Ihre select ... Spalten und die group by, werden Sie mit einer Zeile für jedes Geschlecht am Ende:

select COUNT(Attendance.studentid) as Absentees, 
     Sections.Max-count(studentid) as Presentees, 
     Students.Gender as Gender 
from Attendance 
inner join Students 
on Students.StudentId=Attendance.StudentId 
inner join Sections 
on Sections.CourseId=Students.CourseId 
group by Sections.Max, Students.Gender 
+0

jetzt funktioniert es gut, vielen Dank Tobyodavies – shanish