![]() |
1. Пользуйтесь тегами кода. - [code] ... [/code]
2. Точно указывайте язык, название и версию компилятора (интерпретатора).
3. Название темы должно быть информативным.
В описании темы указываем язык!!!
![]() |
Triplet |
![]()
Сообщение
#1
|
Пионер ![]() ![]() Группа: Пользователи Сообщений: 78 Пол: Женский Репутация: ![]() ![]() ![]() |
Здравствуйте.
Помогите, пожалуйста, написать вложенный запрос на sql. Есть таблица Student с полем ФИО,ID, есть таблица Оценки, т.е. по определённому заданию своя оценка (в процентах) и есть таблица Посещаемость. На отчисление выводятся те, у кого средний балл меньше 40% и посещаемость <30%. Я sql начала изучать совсем недавно, могу написать только тривиальный select, так что извиняюсь, если вопрос дурацкий ![]() Заранее спасибо! |
![]() ![]() |
volvo |
![]()
Сообщение
#2
|
Гость ![]() |
Ясно, тебе просто нужно ,чтобы Null-значения считались как нулевые. В MS Access SQL это делается так:
SQL SELECT Student.FIO, P.percent, Avg(IIf(IsNull([Grades]![Grade]),0,[Grades]![Grade])) AS AverageGrade FROM (Student INNER JOIN P ON Student.ID = P.Student) INNER JOIN Grades ON Student.ID = Grades.Student GROUP BY Student.FIO, P.percent HAVING (((P.percent)<30)) AND (((Avg(IIf(IsNull([Grades]![Grade]),0,[Grades]![Grade])))<40)); (или OR). Функция Iif подставляет значение 0, если в ячейке ничего нет, и тогда все подсчитывается правильно... |
![]() ![]() |
![]() |
Текстовая версия | 14.08.2025 10:09 |