Читайте также: |
|
Агрегатные функции (функции множества) в запросе предназначены для вычисления некоторого значения для заданного множества строк. Таким множеством строк может быть группа строк, если агрегатная функция применяется к сгруппированной таблице, или вся таблица. В языке SQL определены следующие агрегатные функции:
· AVG - функция определения среднего значения;
· MAX - функция определения максимального значения;
· MIN - функция определения минимального значения;
· SUM - функция суммирования значений;
· COUNT - функция для подсчета числа строк или значений.
Грамматика агрегатных функций следующая:
<агрегатная функция>::= COUNT(*) | <(ИзИпсифункция> | <all-функция>
<б1зИпс1-функция>::= {AVG | COUNT | MAX | MIN | SUM} (DISTINCT <имя столбца>)
<а11-функция>::= {AVG | MAX | MIN | SUM} (^]<выражение>)
Вычисление функции COUNT(*) производится путем подсчета числа строк в заданном множестве. Функция типа distinct выполняет вычисления только над одним столбцом, а в вычислениях используются только уникальные значения столбца. При использовании функции типа all список значений формируется из значений арифметического выражения, вычисляемого для каждой строки заданного множества.
Пример 1. Запрос с параметром «Список класса». При выполнении запрашивается номер класса.
SQL-запрос:
SELECT Ученики.Класс, Ученики.Фамилия
FROM Ученики
WHERE (((Ученики.Класс) Like [Введите номер класса]));
Пример 2. Средняя оценка по предметам.
SQL-запрос:
SELECT Успеваемость.Класс, Успеваемость.Предмет, Avg(Успеваемость.Год) AS [Avg-Год]
FROM Успеваемость
GROUP BY Успеваемость.Класс, Успеваемость.Предмет;
Пример 3. Список учеников 9-х классов, сортировка по возрастанию
SQL-запрос:
SELECT Ученики.Фамилия, Ученики.Класс, Ученики.Адрес
FROM Ученики
WHERE (((Ученики.Класс) Like "9*"))
ORDER BY Ученики.Фамилия;
Пример 4. Годовые «5»
SQL-запрос:
SELECT Ученики.Фамилия, Ученики.Имя, Успеваемость.Предмет, Успеваемость.Год
FROM Ученики INNER JOIN Успеваемость ON Ученики.Код_ученика = Успеваемость.Код_ученика
WHERE (((Успеваемость.Год)=5))
ORDER BY Ученики.Фамилия, Успеваемость.Предмет;
Ваш ответ:
From = Перечисление используемых таблиц
Where = Фильтрация записей по логическому выражению
Group by = Группировка записей по одинаковым значениям полей
Having = Фильтрация группы записей по логическому выражению
Order by = Сортировка результатов выполнения оператора
Верно!
Дата добавления: 2015-07-07; просмотров: 209 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Добавление вычисляемых выражений в формы и отчеты | | | Во-первых, конкуренция в них сильно затруднена или просто невозможна. А производство в частном секторе является эффективным, если существует свободная конкуренция. |