Раздел СОМРUТЕ
Этот раздел предназначен для выполнения групповых операций над содержимым столбцов выборки. Групповые операции задаются с помощью функций агрегирования. Результат агрегирования выводится в отдельной строке после всех данных столбца.
Синтаксис раздела COMPUTE следующий:
COMPUTE <Функция_ агрегирования>(<столбец_ агрегирования>)][,..., n] [ BY <столбец_ группировки> [,...,n ] ]
Аргумент <столбец_ агрегирования> должен содержать имя. агрегируемого столбца. Этот столбец должен быть включен в результат выборки. Ключевое слово BY указывает, что результат вычисления следует сгруппировать. Следующий за этим ключевым словом аргумент <столбец_ группировки> содержит имя столбца, по которому будет производиться группировка. Результат необходимо предварительно отсортировать по этому столбцу, то есть столбец должен быть указан в разделе ORDER BY. Приведем простой пример применения раздела COMPUTE для вычисления количества дисциплин, читаемых в семестре, и общей суммы( часов:
SELECT Наименованием. Семестр Количество_ часов,
FROM Учебный_ план, Дисциплины
WHERE (Учебный_ план. ID_ Дисциплина =
Дисциплины. ID_ Дисциплина) AND (Семестр = 2)
COMPUTE SUM(Количество_ часов), COUNT(Семестр)
Будет получен следующий результат:
Рассмотрим пример группировки при использовании раздела COMPUTE (составление списков групп и вычисление количества студентов в группе):
SELECT Фамилия, Имя, Отчество; Номер_ Группы
FROM Студенты
ORDER BY Номер_ группы
COMPUTE COUNT (Номер_ Группы) BY Номер_ Группы
Дата добавления: 2015-04-15; просмотров: 599;