ВУЗ:
Составители:
Рубрика:
72
SELECT gr.Name_group AS Группа, COUNT (DISTINCT
(pr.ID_Lesson)) AS Количество экзаменов
FROM Groups gr, Progress pr, Students st
WHERE st.ID_Student= pr.ID_Student AND
gr.ID_Group=st.ID_Group
AND EXISTS
(SELECT Examen FROM Progress)
GROUP BY gr.Name_group
HAVING COUNT (DISTINCT (pr.ID_Lesson))>3
Результат выполнения запроса приведен на рис. 23.
Рис. 23. Предложение HAVING в операторе SELECT
Пример 57. Вывести список групп, в которых средний балл > 3:
SELECT gr.Name_group AS Группа, AVG (pr.Examen) AS
Средний балл
FROM Groups gr, Progress pr, Students st
WHERE st.ID_Student= pr.ID_Student AND
gr.ID_Group=st.ID_Group
GROUP BY gr.Name_group
HAVING AVG (pr.Examen)>3
Результат выполнения запроса приведен на рис. 24.
Рис. 24. Предложение HAVING в операторе SELECT
Краткие итоги
Команда SELECT не изменяет данные в базе данных.
Формат команды SELECT:
SELECT [предикат ]
{ * | [имя_столбца [AS новое_имя] ] } [,...n]
SELECT gr.Name_group AS Группа, COUNT (DISTINCT
(pr.ID_Lesson)) AS Количество экзаменов
FROM Groups gr, Progress pr, Students st
WHERE st.ID_Student= pr.ID_Student AND
gr.ID_Group=st.ID_Group
AND EXISTS
(SELECT Examen FROM Progress)
GROUP BY gr.Name_group
HAVING COUNT (DISTINCT (pr.ID_Lesson))>3
Результат выполнения запроса приведен на рис. 23.
Рис. 23. Предложение HAVING в операторе SELECT
Пример 57. Вывести список групп, в которых средний балл > 3:
SELECT gr.Name_group AS Группа, AVG (pr.Examen) AS
Средний балл
FROM Groups gr, Progress pr, Students st
WHERE st.ID_Student= pr.ID_Student AND
gr.ID_Group=st.ID_Group
GROUP BY gr.Name_group
HAVING AVG (pr.Examen)>3
Результат выполнения запроса приведен на рис. 24.
Рис. 24. Предложение HAVING в операторе SELECT
Краткие итоги
Команда SELECT не изменяет данные в базе данных.
Формат команды SELECT:
SELECT [предикат ]
{ * | [имя_столбца [AS новое_имя] ] } [,...n]
72
Страницы
- « первая
- ‹ предыдущая
- …
- 71
- 72
- 73
- 74
- 75
- …
- следующая ›
- последняя »
