-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathfaculty report.sql
More file actions
31 lines (31 loc) · 1.46 KB
/
faculty report.sql
File metadata and controls
31 lines (31 loc) · 1.46 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
SELECT
`facultyId`,
university_admission.user.first_name,
university_admission.user.last_name,
university_admission.user.email,
university_admission.entrant.isBlocked,
`preliminary_sum`,
`diploma_sum`,
`preliminary_sum` + `diploma_sum` AS `total_sum`
FROM
(SELECT
university_admission.faculty_entrants.Faculty_idFaculty AS `facultyId`,
university_admission.mark.Entrant_idEntrant AS `entrantId`,
SUM(CASE `exam_type`
WHEN 'preliminary' THEN university_admission.mark.value
ELSE 0
END) AS `preliminary_sum`,
SUM(CASE `exam_type`
WHEN 'diploma' THEN university_admission.mark.value
ELSE 0
END) AS `diploma_sum`
FROM
university_admission.faculty_entrants
INNER JOIN university_admission.mark ON university_admission.faculty_entrants.Entrant_idEntrant = university_admission.mark.Entrant_idEntrant
GROUP BY entrantId) AS `entrant_marks_sum`
INNER JOIN university_admission.faculty ON `entrant_marks_sum`.`entrantId` = university_admission.faculty.id
INNER JOIN university_admission.entrant ON `entrantId` = university_admission.entrant.id
INNER JOIN university_admission.user ON university_admission.entrant.User_idUser = university_admission.user.id
WHERE
facultyId = ?
ORDER BY isBlocked ASC , `total_sum` DESC;