|
Программирование >> Исключение дубликатов строк
Преобразование/ Select bowler first name, bowler last name, current Уточнение: average, and the maximum (raw score) as HighGame from the bowlers table oined with the bowler scores table on bowler ID, grouped by bowler first name, bowler last name, and bowler current average, having the maximum (raw score) greater than the > current average pkts + 20 (Выбрать имя игрока в боулинг, фамилию игрока в боулинг, текущее среднее, max (предварительное количество очков) как HighGame из Игроки в боулинг , соединенной с Очки игрока в боулинг по идентификатору игрока, сгруппированные по имени игрока, фамилии игрока, текущему среднему игрока, имеющему max (предварительное количество очков) > текущее среднее + 20) SELECT Bowlers.BowlerFirstName, Bowlers.BowlerLastName, Bowie rs.Cu г rentAve rage, MAX(Bowier Scores.RawScore) AS HighGame FROM Bowlers INNER JOIN Bowler.Scores ON Bowlers.BowlerlD = BowlerScores.BowlerlD GROUP BY Bowlers.BowlerFirstName, Bowlers.BowlerLastName, Bowlers.CurrentAverage HAVING MAX(Bowier Scores.RawScore) > (Bowlers.CurrentAverage+20) Boujlcrs Big High Scorc (15 строк) Внимание! Таблица Bowlers (Игроки в боулинг) содержит в себе столбец CurrentAverage (Текущее среднее), и мы воспользовались этим преимуществом. Чтобы работать со структурой этой таблицы, приложение, которое ее использует, должно повторно вычислять и корректировать указанный столбец каждый раз, когда для игрока в боулинг вводятся новые игры. Но она была спроектирована таким образом с целью избежать повторных вычислений среднего значения, возможно, по сотне игр каждый раз, когда нам потребуется это значение. Также можно было вычислить абсолютное текущее среднее, используя подзапрос по таблице Bowler Scores, но это выполнялось бы медленнее. Подробнее о нарушениях правил проектирования БД можно узнать из книги Database Design for Mere Mortals (Reading, MA: Addison-Wesley, 1997). Бозо goHHbiX росписония зонятий For completed classes, list by category and student the category name, the student name, and the students average grade of all classes taken in that category for those students who have an average of 90 or better . ( Для завершенных курсов лекций привести список по категории и студенту, включающий наименование категории, имя студента и средний балл студента по всем прослушанным курсам лекций в этой категории для тех студентов, которые имеют средний балл 90 или выше . Преобразование/ Уточнение: Select category description, student first name, student last name, and the average avg(df grade) as AvgOfGrade from the categories table joined with the subjects table on category ID, thett joined with the classes table on subject ID, then joined with the student schedules table on class ID, theft oined with the student class status table on class status, and finally joined with the students table on student ID where class status description ts = Completed, grouped by category description, student first name, aftd student last name, ttne having the average avg(ef grade) greater than > 90 (Выбрать описание категории, имя студента, фамилию студента, avg (средний балл) как AvgOfGrade из Категории , соединенной с Предметы по идентификатору категории, соединенной с Расписание занятий студента по идентификатору класса, соединенной со Студенты по идентификатору студента, где описание состояния курса лекций = Завершено , сгруппированные по описанию категории, имени студента, фамилии студента, имеющего avg (средний балл) > 90) SELECT Categories.CategoryDescription, Students.StudFirstName, Students.StudLastName, AVGCStudentSchedules.Grade) AS AvgOfGrade FROM ((((Categories INNER JOIN Subjects ON Categories.CategorylD = Subjects.CategorylD) INNER JOIN Classes ON Subjects.SubjectID = Classes.SubjectID) INNER JOIN StudentSchedules ON Classes.ClassID = Student.Schedules.ClassID) INNER JOIN Student.Class Status ON Student Class.Status.ClassStatus = Student Schedules.ClassStatus) INNER JOIN Students ON Students.StudentID = Student.Schedules.StudentID WHERE Student Class Status.ClassStatusDescription = Completed GROUP BY Categories.CategoryDescription, Students.StudFirstName, Students.StudLastName HAVING AVG(Student Schedules.Grade) > 90 R.Students (13 строк) i ii.iitii,jpii4ii>iwiniii>iwiiiiiHi4i!Jiii.4ii 1ячшт 14 Л И>1Ч*1 Elizabeth Michael Leveriing Leveriing EH/t Hallniiirk irtf-iMi w*<-iWv*wi.4 i *ii.uii iil iinnnii)tiii>iii: i .v. -:>4 90.63 91. .72 92.90 Л1агу Ehrlic *nncav 93.в6 97.39 92.08 > Nancv #4 93.2(f >
|
© 2006 - 2024 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки. |