СУБД IBM System R. SEQUEL Structured English QUEry Language — структурированный английский язык запросов презентация

Содержание

Слайд 2

Язык SQL Интерактивный функционирование непосредственно в базе данных Программный -

Язык SQL

Интерактивный
функционирование непосредственно в базе данных
Программный - встраивание запросов в прикладную

программу
Статический SQL
Динамический SQL
API-интерфейсы
Слайд 3

Типы данных в SQL Целочисленный Вещественный Тип данных даты и времени Строковый

Типы данных в SQL

Целочисленный
Вещественный
Тип данных даты и времени
Строковый

Слайд 4

Целочисленный тип данных в SQL

Целочисленный тип данных в SQL

Слайд 5

Вещественный тип данных в SQL

Вещественный тип данных в SQL

Слайд 6

Тип данных даты и времени в SQL

Тип данных даты и времени в SQL

Слайд 7

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

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

Слайд 8

Основные команды SQL

Основные команды SQL

Слайд 9

. DDL (Data Definition Language) – язык определения данных CREATE

. DDL (Data Definition Language) – язык определения данных
CREATE
ALTER
DROP
RENAME
DML (Data Manipulation

Language)– язык манипуляции данными
INSERT
UPDATE
DELETE

Типы операторов SQL

Слайд 10

DQL (Data Query Language) – язык запросов к данным SELECT

DQL (Data Query Language) – язык запросов к данным
SELECT
DCL (Data Control

Language) – язык управления данными
PASSWORD
GRANT
REVOKE

Типы операторов SQL

Слайд 11

DAL (Data Administration Language) – язык администрирования данных START AUDIT

DAL (Data Administration Language) – язык администрирования данных
START
AUDIT
STOP
Команды управления транзакциями
SAVE
POINT
SET

Типы операторов

SQL
Слайд 12

Операторы SQL CREATE TABLE (создание таблицы): CREATE TABLE ( [( )], [( )], ... );

Операторы SQL

CREATE TABLE (создание таблицы):
CREATE TABLE
(

type>[()],
[()], ... );
Слайд 13

Операторы SQL CREATE TABLE Продавцы (КодПродавца integer, ИмяПродавца char (10), Город char (10), Комиссионные real);

Операторы SQL

CREATE TABLE Продавцы
(КодПродавца integer,
ИмяПродавца char (10),
Город char

(10),
Комиссионные real);
Слайд 14

Операторы SQL DROP TABLE (удаление таблицы): DROP TABLE DROP TABLE Продавцы

Операторы SQL

DROP TABLE (удаление таблицы):
DROP TABLE < table name >


DROP TABLE Продавцы

Слайд 15

Введение ограничений CREATE TABLE с учетом ограничений: CREATE TABLE (

Введение ограничений

CREATE TABLE с учетом ограничений:
CREATE TABLE < table name >


( ,
...;

CREATE TABLE Продавцы
(КодПродавца integer NOT NULL,
ИмяПродавца char (10),
Город char (10),
Комиссионные real);

Слайд 16

Введение ограничений CREATE TABLE с учетом ограничений: CREATE TABLE (

Введение ограничений

CREATE TABLE с учетом ограничений:
CREATE TABLE < table name >


( ,
...;

CREATE TABLE Продавцы
(КодПродавца integer UNIQUE,
ИмяПродавца char (10),
Город char (10),
Комиссионные real);

Слайд 17

Введение ограничений CREATE TABLE с учетом ограничений: CREATE TABLE (

Введение ограничений

CREATE TABLE с учетом ограничений:
CREATE TABLE < table name >


( ,
...;

CREATE TABLE Продавцы
(КодПродавца integer NOT NULL UNIQUE,
ИмяПродавца char (10),
Город char (10),
Комиссионные real);

Слайд 18

Создание первичных ключей CREATE TABLE Продавцы (КодПродавца integer PRIMARY KEY,

Создание первичных ключей

CREATE TABLE Продавцы
(КодПродавца integer PRIMARY KEY,
ИмяПродавца char

(10),
Город char (10),
Комиссионные real);

CREATE TABLE Заказы
(КодПокупки integer,
СуммаПокупки double,
ДатаПокупки date,
КодКлиента integer,
КодПродавца integer,
PRIMARY KEY (КодКлиента, КодПродавца));

Ограничение на столбец

Ограничение на таблицу

Слайд 19

Создание внешних ключей CREATE TABLE Заказы (КодПокупки integer, СуммаПокупки double,

Создание внешних ключей

CREATE TABLE Заказы
(КодПокупки integer,
СуммаПокупки double,
ДатаПокупки date,


КодКлиента integer REFERENCES Клиенты (КодКлиента),
КодПродавца integer REFERENCES Продавцы (КодПродавца));

CREATE TABLE Заказы
(КодПокупкиinteger,
СуммаПокупки double,
ДатаПокупки date,
КодКлиента integer,
КодПродавца integer,
FOREIGN KEY (КодКлиента) REFERENCES Клиенты (КодКлиента),
FOREIGN KEY (КодПродавца) REFERENCES Продавцы (КодПродавца));

Ограничение на столбец

Ограничение на таблицу

Слайд 20

Операторы SQL INSERT (ввод значений): INSERT INTO [(column [,column] ...)]

Операторы SQL

INSERT (ввод значений):
INSERT INTO


[(column [,column]
...)]
VALUES ( [,] ... );

INSERT INTO Продавцы
VALUES (11, 'Браун', 'Лондон', 0.12);

INSERT INTO Продавцы (ИмяПродавца, Комиссионные, КодПродавца, Город)
VALUES ('Браун',0.12, 11, 'Лондон');

Слайд 21

Операторы SQL DELETE (удаление строк): DELETE FROM [WHERE search–condition]; DELETE

Операторы SQL

DELETE (удаление строк):
DELETE FROM


[WHERE search–condition];

DELETE

FROM Продавцы;

DELETE FROM Продавцы
WHERE КодПродавца = 13;

Удаление всего содержимого таблицы

Удаление строки

Слайд 22

Операторы SQL UPDATE (изменение значения поля): Первый вариант: UPDATE SET

Операторы SQL

UPDATE (изменение значения поля):

Первый вариант:
UPDATE

view name>
SET column = expression [, column = expression] ...
[WHERE search–condition]
где expression – это столбец | выражение | константа | переменная.
Второй вариант:
UPDATE

SET column = expression, ...
[ FROM table–list ]
[ WHERE search–condition ]
Слайд 23

Операторы SQL UPDATE Клиенты SET Рейтинг = 200; UPDATE Клиенты

Операторы SQL

UPDATE Клиенты
SET Рейтинг = 200;

UPDATE Клиенты
SET Рейтинг

= 200
WHERE КодПродавца = 11;

Модифицирование определенных строк

Использование арифметических выражений

UPDATE Продавцы
SET Комиссионные = Комиссионные * 2;

Изменить рейтинг всех клиентов на 200

Слайд 24

Операторы SQL SELECT (извлечение информации): SELECT [DISTINCT| ALL] {* |

Операторы SQL

SELECT (извлечение информации):
SELECT [DISTINCT| ALL] {* | [<СПИСОК СТОЛБЦОВ>]}

FROM <СПИСОК ТАБЛИЦ>
[WHERE <предикат-условие выборки или соединения;>] [GROUP BY <список полей результата>]
[HAVING <предикат-условие для группы>]
[ORDER BY <список полей, по которым требуется упорядочить ВЫВОД>]
Слайд 25

Операторы SQL Задача. Вывести номера телефонов кафедр университета. SELECT Name_kaf, Nom_telef FROM kafedra; Результат:

Операторы SQL

Задача. Вывести номера телефонов кафедр университета.
SELECT Name_kaf, Nom_telef
FROM kafedra;
Результат:

Слайд 26

Операторы SQL Задача. Вывести сведения о кафедре «Графики». SELECT *

Операторы SQL

Задача. Вывести сведения о кафедре «Графики».
SELECT *
FROM kafedra
WHERE Name_kaf =

'Графики';
Результат:
Слайд 27

Операторы SQL Задача. Вывести сведения о кафедрах университета, находящихся па

Операторы SQL

Задача. Вывести сведения о кафедрах университета, находящихся па первом этаже,

учитывая тот факт, что номера аудиторий первого этажа лежат в диапазоне от 1 до 99.
SELECT * FROM kafedra
WHERE NonuAuditoria BETWEEN 1 AMD 99;
Результат:
Слайд 28

Операторы SQL Задача. Вывести сведения о кафедрах университета в виде,

Операторы SQL

Задача. Вывести сведения о кафедрах университета в виде, отсортированном по

столбцу Name_kaf в порядке возрастания.
SELECT *
FROM kafedra
ORDER BY Namejtaf ASC;
Результат:
Слайд 29

Агрегатные функции языка SQL COUNT — возвращает количество значений в

Агрегатные функции языка SQL

COUNT — возвращает количество значений в указанном столбце;

SUM

— возвращает сумму значений в указанном столбце;

AVG — возвращает усредненное значение в указанном столбце;

MIN — возвращает минимальное значение в указанном столбце;

МАХ — возвращает максимальное значение в указанном столбце.

Слайд 30

Задача. Определить среднее число сотрудников, работающих на кафедрах университета. SELECT

Задача. Определить среднее число сотрудников, работающих на кафедрах университета.
SELECT AVG(Col_sotr) AS

avg
FROM kafedra;
Результат:

Агрегатные функции языка SQL

Слайд 31

Задача. Вывести список платежей, где величина единовременных начислении превысила среднее

Задача. Вывести список платежей, где величина единовременных начислении превысила среднее значение.
SELECT

ФИО, Этап, Начисления
FROM r
WHERE Начисления > (SELECT avg(Начисления) FROM r);
Результат:

Вложенные запросы SQL

Слайд 32

SELECT * FROM rl, r2; и соответствует декартову произведению таблиц

SELECT *
FROM rl, r2;
и соответствует декартову произведению таблиц r1 и r2.
Выражение
SELECT

rl.A, r2.B
FROM rl, r2;
соответствует проекции декартова произведения двух таблиц на два столбца А из таблицы r1 и В из таблицы r2.

Многотабличные запросы SQL

Слайд 33

База данных «НИР» R1 = (ФИО, Отдел); R2= (Отдел, Этап); R3= (ФИО, Этап, Начисления).

База данных «НИР»
R1 = (ФИО, Отдел);
R2= (Отдел, Этап);
R3= (ФИО, Этап, Начисления).

Слайд 34

Задача. Вывести список сотрудников отдела 03, которые участвовали в выполнении

Задача. Вывести список сотрудников отдела 03, которые
участвовали в выполнении Этапа_3.
SELECT r3.ФИО,

r3.Этап
FROM rl, r3
WHERE rl.Отдел = '03' AND
rl.ФИО = r3.ФИО AND
r.Этап = 'Этап_3';
Результат:

Вложенные запросы SQL

Слайд 35

База данных «Сессия» S1 = (ФИО, Дисциплина, Оценка) — содержит

База данных «Сессия»
S1 = (ФИО, Дисциплина, Оценка) —
содержит сведения о

результатах сессии;
S2= (ФИО, Группа) —
содержит сведения о составе групп;
S3 = (Группа, Дисциплина) —
содержит перечень экзаменов, подлежащих сдаче.
Слайд 36

База данных «Сессия»

База данных «Сессия»

Слайд 37

Задача. Вывести группы, в которых по одной дисциплине на экзаменах

Задача. Вывести группы, в которых по одной дисциплине на экзаменах получено

больше одной пятерки.
SELECT s2.Группа
FROM s1, s2
WHERE s1.ФИО = s2.ФИО AND
s1.Оценка = 5
GROUP BY s2.Группа , s1.Дисциплина
HAVING count (*)> 1;
Результат:

Вложенные запросы SQL

Имя файла: СУБД-IBM-System-R.-SEQUEL-Structured-English-QUEry-Language-—-структурированный-английский-язык-запросов.pptx
Количество просмотров: 38
Количество скачиваний: 0