-
Привет всем! У меня такая проблема, нужно вычислить средний балл по группам. Но когда я пишу код вот такой begin with Query1 Do begin Close; SQL.Clear; SQL.Add('Select avg(ocenka), gruppa'); SQL.Add ('From Student,Ocenki,Gruppa'); SQL.Add('Where Ocenki.idstud=Student.idstud and Gruppai.idgrup=Student.idgrup '); Open; if Query1.RecordCount<>0 then begin DataSource1.DataSet:=Query1 ;
end ; end; end; Вычисляется общий средний балл(на все группы) . Есть таблицы студенты(idstud, fam, ima,idgrup),группа(idgrup,gpuppa),оценки(idstud, semestr, ocenka). Между ними есть связь. Не знаю как правильно сделать Помогите мне пожалуйста.Заранее спасибо
-
По идее - твой запрос вообще - не должен выполняться, так как нет кляузы group by. select avg(o.ocenka), g.idgrup, max(g.gruppa)
from ocenki o
join student s on s.idstup = o.idstud
join Gruppai g on d.idgrup = s.idgrup
group by g.idgrup
-
> [1] Jack128_ (13.04.08 21:26)
только вот макс лишний :)
select avg(o.ocenka), g.idgrup, g.gruppa from ocenki o join student s on s.idstup = o.idstud join Gruppai g on d.idgrup = s.idgrup group by g.idgrup, g.gruppa
-
спам
|