- •Санкт-Петербургский государственный
- •План лекции
- •Язык реляционных запросов
- •Язык реляционных запросов (QBE)
- •Язык реляционных запросов (QBE)
- •Язык реляционных запросов (QBE)
- •Язык реляционных запросов (QBE)
- •Язык реляционных запросов (QBE)
- •Язык реляционных запросов (QBE)
- •Язык реляционных запросов (QBE)
- •Язык реляционных запросов (QBE)
- •Язык реляционных запросов (QBE)
- •Язык реляционных запросов (QBE)
- •Язык реляционных запросов (QBE)
- •Язык реляционных запросов (QBE)
- •Язык реляционных запросов (QBE)
- •Язык реляционных запросов (QBE)
- •Язык реляционных запросов (QBE)
- •Основы языка SQL.
- •Основы языка SQL.
- •Основы языка SQL.
- •Основы языка SQL.
- •Основы языка SQL.
- •Основы языка SQL.
- •Основы языка SQL.
- •Основы языка SQL.
- •Основы языка SQL.
- •Основы языка SQL.
- •Основы языка SQL.
- •Основы языка SQL.
- •Основы языка SQL.
- •Основы языка SQL.
- •Основы языка SQL.
- •Основы языка SQL.
- •Основы языка SQL.
- •Основы языка SQL. Основные элементы
- •Основы языка SQL.
- •БЛАГОДАРЮ ЗА ВНИМАНИЕ !
Язык реляционных запросов (QBE)
Составление запросов. Бланк
запроса:
В состав результирующего отношения включены атрибуты P.FAMP, DET.NAMED и PD.KOL; атрибут P.NP к их числу не
относится
Задано следующее условие, накладываемое на значения атрибутов, используемых в запросе:
((PD.KOL>200) AND (P.NP="P4")) OR
(P.NP="P2").
11
Язык реляционных запросов (QBE)
Составление запросов. Результат запроса 1:
SELECT P.FAMP, DET.NAMED, PD.KOL
FROM P INNER JOIN (DET INNER JOIN PD ON
DET.ND = PD.ND) ON P.NP = PD.NP
WHERE (((PD.KOL)>200) AND ((P.NP)="P1"))
OR (((P.NP)="P2"));
12
Язык реляционных запросов (QBE)
Составление запросов.
Простота и удобство QBE накладывают ограничения на выполняемые с его помощью простые запросы.
Запросы с группированием. Суть их состоит в том, что все кортежи исходных отношений делятся по определенным признакам на группы, а затем для групп вычисляются итоги.
13
Язык реляционных запросов (QBE)
Составление запросов.
К числу таковых относятся сумма значений в группе, количество кортежей в группе, среднее в группе и т.д.
Пример запроса 2:
«Для каждого поставщика выдать сумму поставленных им деталей и количество выполненных поставок»
14
Язык реляционных запросов (QBE)
Запрос «Групповая операция»
15
Язык реляционных запросов (QBE)
Запрос «Групповая операция». Значения строки:
Группировка –значение данного атрибута делится на группы;
Sum –вычисляется сумма за группу;
Avg –вычисляется среднеарифметическое за группу;
Min (Max) –выдается минимальное
(максимальное) значение в группе ;
Count –количество кортежей, входящих в группу.
Язык реляционных запросов (QBE)
Составление запросов.
Деление на группы осуществляется по атрибуту PD.NP, т.е. все кортежи,
имеющие одинаковое значение этого атрибута, образуют одну группу.
Количество деталей, отправленных каждым поставщиком, определяется путем вычисления суммы (Sum) значений атрибута (PD.KOL) в каждой группе.
Число поставок, выполненных каждым поставщиком - как количество кортежей в каждой группе, подсчитываемых операцией
Count. ( )
Язык реляционных запросов (QBE)
Составление запросов. Результат запроса 2:
SELECT PD.NP, Sum(PD.KOL) AS [Sum-KOL],
Count(PD.KOL) AS [Count-KOL]
FROM PD
GROUP BY PD.NP;
18
Основы языка SQL.
Характеристика языка
SQL (Structured Query Language) – язык
структурных запросов
Операторы:
SELECT - выборка данных; (выбрать, показать,
отобразить)
UPDATE – модификация данных;
DELETE - удаление данных;
INSERT - ввод новых данных;
…
Всего SQL содержит более 100 операторов и позволяет разрабатывать сложные приложения.
Основы языка SQL.
Основные элементы оператора выборки
SELECT <список выбираемых полей>
FROM <список таблиц>|<условие соединения>
[WHERE <условие выборки>]
[GROOP BY <условие группировки>]
[HAVING <условие выборки группы>]
[ORDER BY <условие упорядочивания> ASC| DESC ]
[UNION <подзапрос >]
[INTO <получатель >]