Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
базы данных.docx
Скачиваний:
3
Добавлен:
26.08.2019
Размер:
37.68 Кб
Скачать

Статистические функции

  1. AVG(выражение) вычисляют среднее значение набора чисел. Выражение может быть именем поля или числовым выражением, содержащим арифметические операции и имена полей. Если в указанном поле содержится значение NULL то эта строка в расчет не берется. Например: найти среднее значение цены товара. Select AVG(цена) As [средняя цена] FROM товара;

  2. COUNT(выражение). вычисляет количество записей возвращаемого запроса, если в качестве выражения используется * то возвращается количество записей в таблице. Если в качестве выражения используется имя поля то в подсчете не участвуют записи со значением 0.

Определить количество заказов: Select Count(*)[Количество заказов] FROM заказы;

  1. MIN(выражение)MAX(выражение)

Определить мин и макс цену товара: Select Min(цена) As[минимальная цена], MAX(цена) As[максимальная цена] FROM товары;

  1. Sum(выражение) определяет сумму значений.

Определить сумму всех товаров Select Sun(цена*количество) As [общая стоимость] FROM товары;

Сортировка данных

ONDER BY имя_поля1[Asc|Desc],

имя_поля2[Asc|Desc],…

вывести список сотрудников по убыванию окладов и фамилиям.

Select Фамилия, Имя, Оклад FROM Сотрудники ORDER By оклад Desc, Фамилия;

Объединение записей

  1. INTER JOIN объединяет записи из 2 таблиц если поля связи содержат совпадающие значения. Синтаксис FROM ТАБЛИЦА1 INTER JOIN ТАБЛИЦА2 ON ТАБЛИЦА1.ПолеСвязи= ТАБЛИЦА2.ПолеСвязи.

Пример объединить таблицы типы и товары по полю код типа.

Select Типы.Категория, Товары.Название FROM Типы INTER JOIN Товары ON Типы.[Код типа]= Товары.[Код типа];

  1. Левое внешнее объединение LEFT JOIN

FROM Таблица1 LEFT JOIN Таблица2 ON Таблица1.ПолеСвязи= Таблица2.ПолеСвязи

Сформировать список категорий и товаром относящийся к этой категории включить в список категории для которых товары отсутствуют.

Select Типы.Категория, Товары.Название FROM Типы LEFT JOIN Товары ON Типы.[Код типа]= Товары.[Код типа];

  1. Правое внешнее объединение RINGHT JOIN

Select Типы.Категория, Товары.Название FROM Типы RINGHT JOIN Товары ON Типы.[Код типа]= Товары.[Код типа];

Группировка полей

Group By список полей. Объединяет записи с одинаковыми значениями в указанном списке полей в одной записи. Если оператор SELECT содержит статистическую функцию, то должна быть группировка по всем остальным полям и для такой группы вычисляется итоговое значение.

Создать список уникальных названий должностей и определить количесво сотрудников занимающую каждую должность. SELECT ДОЛЖНОСТЬ, Count(должность) As Количество

FROM Сотрудники

Group By Должность

ORDER By Должность;

Задание условия для группы

Having условие

Выбрать название должностей которое в Москве несколько должностей.

SELECT ДОЛЖНОСТЬ, Count(должность) As Количество

FROM Сотрудники Where Город=’Москва’

Group By Должность Having Count(Должность)>1

ORDER By Должность;

Предикат ALL, DISTINCT,

DISTINCT TOP n[Percent]

Предикаты позволяют отобрать записи среди выбранных.

ALL действует по умолчанию действия возвращаются

DISTINCT Исключает повторяющиеся значения в выбранных полях

Из таблицы заказы сформировать уникальный список городов.

SELECT DISTINCT Город FROM Заказы ORDER By Город;

DESTING GROUP исключает данные основанные на целиком повторяющиеся записи используются только при объединении таблицы.

TOP n[Percent] возвращает n записей или n процентов записей которые были первыми. При использовании этого предиката необходимо указывать сортировку по возрастанию или убыванию.

Отобрать 10 лучших студентов 2011 года. SELECT Top 10 Фамилия, Имя, Рейтинг

FROM Студенты

Where Год=2011

ORDER By Рейтинг DESC;