Привет, ребята, у меня есть оператор SQL, который оценивает оценки различных типов деятельности (Домашняя работа, Викторина и т. Д.), И если для этого типа есть наименьшее падение, оно падает, в противном случае оно остается. Ниже приведены ошибки, а также код SQL.
SELECT Student.firstName, Student.lastName, 'Grades' =
CASE
WHEN Grades.activityType = 'Homework' THEN
CASE WHEN Policy.drop_hw = 1 THEN
(AVG(SUM(Grades.grade) - MIN(Grades.grade))) * (Policy.homework / 100)
ELSE
(AVG(Grades.grade) * (Policy.homework / 100))
END
END, Course.courseNum, Course.sectNum, Grades.activityType
FROM ...
Вот ошибки, которые я получаю:
- Cannot perform an aggregate function on an expression containing an aggregate or a subquery.
- Column 'Policy.drop_hw' is invalid in the select list because it is not contained in either an aggregate function or the GROUP BY clause.