Читайте также:
|
|
Групповые функции работают с множеством строк и возвращают один результат на группу.
Множество строк может быть целой таблицей или таблицей, разбитой на группы.
К групповым функциям относят:
COUNT (поле) – считает только те записи, в которых задано значение.
COUNT (*) – считает все записи
Функция COUNT возвращает количество записей.
AVG(поле) и SUM(поле) применяются только к полям числового или денежного типа.
Функции MAX(поле) и MIN(поле) применяются к полям любого типа.
Создание групп данных.
Select поле1, групповая функция(поле2) [,] from Таблица GROUP BY поле1
[HAVING условие отбора для групповых данных]
GROPU BY разбивает таблицу на группы, групповая функция возвращает один результат на группу.
SELECT группа, COUNT(номер) as [количество] from студенты group by группа
Получаем количество студентов в каждой группе.
Примечания:
· Список столбцов (полей) в GROUP BY обязателен.
· Использование псевдонимов в GROUP BY недопустимо
· Все столбца, которые входят в список SELECT ик которым не применяются групповые функции, должны быть указаны в GROUP BY
SELECT COUNT(номер) from Студенты – выдаст количество записей.
HAVING задает условие отбора сгруппированных данных (накладывает определенные ограничения).
Напечатать список групп, где девушек больше 5:
SELECT count(номер), группа from студенты where пол=”ж”group by группа having count(номер)>5
Напечатать фамилии студентов, которые имеют средний балл >4
Студенты (номер-студ, ф, группа, …)
Успеваемость (…, номер-студ, дисциплина, семестр, оценка)
SELECT студенты.номер-студ, фамилия, AVG(успеваеомсть.оценка) from студенты inner join успеваемость on студенты.номер-студ=успеваемость.номер-студ group by студенты.номер-студ, фамилия having AVG(успеваемость.оценки) > 4
Дата добавления: 2015-08-02; просмотров: 166 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Создание запросов на выборку на SQL языке. (SELECT) | | | Понятие макроса, создание приложений с использованием макросов. |