
- •1 . Архитектуры обработки данных. 1
- •Архитектура файл/сервер.
- •Архитектура клиент/сервер.
- •Многозвенная архитектура.
- •Способы организации данных.
- •Сетевая модель данных
- •Реляционная модель данных.
- •ЯзыкSqLкак язык работы с реляционными базами.
- •Данные и взаимосвязи.
- •Объекты.
- •Первичные ключи. Что выбрать в качестве первичных ключей для каждой из таблиц?
- •Нормализация данных.
- •Первая нормальная форма.
- •Вторая нормальная форма.
- •Третья нормальная форма.
- •Типы данных.
- •Числовые целые типы данных.
- •Числовые типы данных с плавающей точкой.
- •Символьные типы данных.
- •. Типы данных date, time и datetime.
- •Специальные типы данных.
- •Структура запроса, основные ключевые слова и операторы
- •Список основных операторовSql
- •Список основных ключевых словSql
- •ОператорSelect
- •ПредложениеSelect
- •ПредложениеFrom
- •Повторяющиеся строки (ключевое слово distinct).
- •ПредложениеWhere
- •Условия поиска.
- •Составные условия поиска (and, or и not)
- •Проверка на принадлежность диапазону значений (between)
- •Проверка на членство в множестве (in)
- •Проверка на равенство значению null (is null)
- •Проверка на соответствие шаблону (like)
- •Подстановочные знаки
- •Сортировка результатов запроса (предложениеOrder by)
- •Агрегатные функции
- •Вычисление суммы столбца (sum)
- •Вычисление экстремумов (min и max)
- •Вычисление среднего значения (avg)
- •Вычисление количества значений в столбце (count)
- •Запросы с группировкой (предложениеGroup by)
- •Условия поиска групп having
- •Работа с несколькими таблицами
- •Вложенные запросы
- •Исходная база данных
- •Вложение запросов.
- •Оператор exists
- •Объединение множества запросов в один
- •Когда можно выполнить объединение запросов ?
- •Использование union с order by.
- •Команды модификации данных
- •Ввод значений (insert)
- •Вставка пустых указателей (null)
- •Именование названий столбцов для вставки
- •Вставка результатов запроса
- •Удаление строк из таблиц (delete)
- •Изменение значений поля (update)
- •Использование подзапросов для команд модификации данных
- •Использование подзапросов в insert
- •Использование подзапросов с delete
- •Модификация структуры данных
- •Команда сreate table
- •Команда alter table.
- •Команда drop table
Агрегатные функции
Для подведения итогов по информации, содержащейся в базе данных, в SQL предусмотрены агрегатные (статистические) функции. Агрегатная функция принимает в качестве аргумента какой-либо столбец данных целиком, а возвращает одно значение, которое определенным образом подытоживает этот столбец. Таким образом, все запросы, использующие агрегатные функции могут иметь в списке возвращаемых столбцов только результаты применения агрегатных функций к полям или к их комбинациям и, кроме этого, возвращать только одну строку (за исключением запросов с использованием предложения GROUP BY, которые рассмотрены ниже).
Стандартными агрегатными функциями являются SUM, MIN, MAX, AVG, COUNT.
Вычисление суммы столбца (sum)
Агрегатная функция SUM () вычисляет сумму всех значений, содержащихся в столбце. При этом столбец должен иметь числовой тип данных (содержать целые числа, десятичные числа, числа с плавающей запятой или денежные величины). Результат, возвращаемый этой функцией, имеет тот же тип данных, что и столбец.
Вычислить оборот за каждый день в течение месяца.
SELECT ДАТА_ДОК
SUM (КОЛ-ВО*ЦЕНА)
FROM ПЕРЕМЕЩЕНИЕ
WHERE ДАТА_ДОК BETWEEN ‘1.01.2000’ AND ’31.01.2000’
Вычисление экстремумов (min и max)
Агрегатные функции MIN () и MAX () позволяют найти соответственно наименьшее и наибольшее значения в столбце. При этом столбец может содержать числовые или строковые значения либо значения даты/времени. Результат возвращаемый этими функциями, имеет точно такой же тип данных, что и сам столбец.
Вывести максимальную цену товара.
SELECT MAX (ЦЕНА)
FROM ПЕРЕМЕЩЕНИЕ
Когда был сделан самый первый из всех содержащихся в базе данных документ?
SELECT MIN (ДАТА)
FROM ДОКУМЕНТ
В случае применения агрегатных функций MIN () и MAX () к числовым данным числа сравниваются по арифметическим правилам (большие отрицательные числа меньше, чем маленькие отрицательные числа, которые меньше нуля; нуль меньше любого положительного числа). Сравнение дат происходит последовательно (более ранние значения дат считаются меньшими, чем более поздние). Сравнение интервалов времени выполняется на основании их продолжительности (более короткие интервалы времени меньше, чем более длинные).
Вычисление среднего значения (avg)
Агрегатная функция AVG () вычисляет среднее всех значений, содержащихся в столбце. Данные, содержащиеся в столбце, должны иметь числовой тип. Поскольку функция AVG () вначале суммирует все значения, содержащиеся в столбце, а затем делит сумму на число этих значений, возвращаемый ею результат может иметь не такой тип данных, как столбец. Например, если применить функцию AVG () к столбцу целых чисел, результат будет либо десятичным числом, либо числом с плавающей запятойв зависимости от используемой СУБД.
Вычислить среднее значение цены и количества в таблице «Остатки».
SELECT AVG(ЦЕНА),AVG(КОЛИЧЕСТВО)
FROM ОСТАТКИ
Вычисление количества значений в столбце (count)
Агрегатная функция COUNT () подсчитывает количество значений в столбце. При этом тип данных может быть любым. Функция COUNT () всегда возвращает целое число независимо от типа данных столбца.
Вывести количество фирм, являющихся ЗАО.
SELECT COUNT(*)
FROM КЛИЕНТ
WHERE НАЗВАНИЕ LIKE ‘%ЗАО%’