- •Базы Данных
- •1.Понятие банка данных. Компоненты банков данных и их краткая характеристика
- •2.Языковые средства субд
- •3.Классификация баз данных
- •4.Этапы проектирования баз данных
- •Тсп для даталогического проектирования
- •Тсп для физического проектирования
- •5.Инфологическое (концептуальное) моделирование
- •7.Case -средства проектирования бд
- •9.Реляционные модели. Основные понятия
- •10.Реляционные модели. Нормальные формы отношений
- •5Nf. Декомпозиция без потерь
- •11.Реляционные модели. Нормализация отношений
- •12.Реляционные алгебры
- •13.Факторы, влияющие на проектирование баз данных
- •1. Специфика предметной области:
- •2. Особенности требуемой обработки информации:
- •3. Характеристика пользователей системы:
- •14.Алгоритм перехода от er-модели к реляционной модели данных
- •15.Ограничения целостности. Понятие и классификация
- •16.Возможности задания ограничений целостности в современных субд
- •17.Языки запросов. Понятие. Классификация
- •18.Классификация запросов. Особенности реализации запросов разных классов
- •19.Табличные языки запросов. Общая характеристика
- •20.Язык sql. Общая характеристика
- •21.Общая структура команды Select языка sql. Корректировка данных в sql
- •22.Sql. Создание объектов
- •23.Sql. Встроенный join
- •24.Sql. Понятие курсора. Использование курсоров
- •25.Sql. Группировка данных. Использование обобщающих функций
- •26.Sql. Создание и использование представлений
- •27.Генераторы экранных форм. Назначение. Классификация
- •28.Генераторы отчетов. Назначение. Классификация
- •29.Классификация распределенных банков данных
- •30.Проблемы обеспечения целостности в распределенных бд
- •31.Сравнение централизованных и распределенных систем
- •32.Распределенные бд. Технологии файл-сервер и клиент-сервер
- •33.Распределенные базы данных. Технология тиражирования
- •34.Проблемы, возникающие при параллельном доступе, и пути их решения
25.Sql. Группировка данных. Использование обобщающих функций
SQL (Structurend Query Language) — универсальный компьютерный язык, применяемый для создания, модификации и управления данными в реляционных базах данных. SQL основывается на реляционной алгебре.
Запрос — команда, которую вы даете вашей программе базы данных. Запросы это часть языка DML.
DML (Язык Манипулирования Данными) – подмножество языка SQL — это набор команд, которые определяют, какие значения представлены в таблицах в любой момент времени.
Предложение GROUP BY позволяет группировать записи по одному полю или совокупности полей, указанных в этой фразе. Порядок следования полей в списке имеет значение, поскольку именно он будет определять старшинство признаков группировки. Возвращается одна строка для каждой группы. Допускается до десяти уровней группировки. Нельзя осуществлять группировку по полям, имеющим тип MEMO или объект OLE.
SELECT [код кафедры], Count (ФИО) AS [число_сотрудников] FROM сотрудник GROUP BY[код кафедры];
Стандарт SQL требует, чтобы предложение SELECT и фраза GROUP BY были тесно связаны между собой. При наличии в операторе SELECT фразы GROUP BY каждый элемент списка в предложении SELECT должен иметь единственное значение для всей группы. Более того, предложение SELECT может включать только следующие типы элементов: имена полей, итоговые функции, константы и выражения, включающие комбинации перечисленных выше элементов. Если совместно с GROUP BY используется предложение WHERE, то оно обрабатывается первым, а группированию подвергаются только те строки, которые удовлетворяют условию поиска. В оператор SELECT, содержащий предложение GROUP BY, могут быть включены как предложение WHERE, так и HAVING. Having для групп имеет то же значение, что и Where для строк. Предложение WHERE используется для исключения записей из группировки, a HAVING - для применения фильтра к записям после группировки. Предложение HAVING имеет следующий синтаксис: [HAVING условиеГруппировки]; Предложение HAVING может содержать до 40 выражений, связанных логическими операторами AND и OR. Следует иметь в виду, что для GROUP BY все значения NULL трактуются как равные, то есть при группировке по полю, содержащему NULL-значения, все такие строки попадут в одну группу.
Обычно GROUP BY используется вместе со статистическими функциями, позволяющими проводить вычисления для сформированных групп.
Оператор SELECT, содержащий предложение GROUP BY, обычно в качестве полей, выводимых в ответ, включает поля, по которым проводится группировка, и одну (или несколько) статистическую функцию SQL.
В Access используются следующие статистические функции: Avg, Count, First, Last, Min, Max, StDev, StDevP, Sum, Var, VarP.
Статистические функции First, Last, StDev, StDevP, Var, VarP в стандарте SQL отсутствуют.
* COUNT - производит номера строк или не-NULL значения полей которые выбрал запрос.
* SUM - производит арифметическую сумму всех выбранных значений данного пол.
* AVG - производит усреднение всех выбранных значений данного пол.
* MAX - производит наибольшее из всех выбранных значений данного пол.
* MIN - производит наименьшее из всех выбранных значений данного пол.