double arrow

Право q


Тип_самолета

Тогда в результате получим отношение

Пилот
Иванов
Сидоров

Право ÷ q

Соединение отношений – создание нового отношения, кортеж которого является результатом сцепления кортежей исходных отношений. Различают соединения отношений двух видов: естественное и по условию.

При соединении отношений А и В по условию производится сцепление строк отношений А и В, и проверка полученной строки на соответствии заданному условию. Если условие выполнено, то полученная строка включается в результирующее отношение. Условие представляет собой логическое выражение, в которое могут входить атрибуты отношений A и B и (или) скалярные выражения. Т.о., операция соединения по условию есть результат последовательного применения операций декартового произведения и выборки.

Пусть даны отношения A(A1,A2,...,An,X1,X2,...Xn) и B(X1,X2,...Xn,B1,B2,...,Bn), причем атрибуты X1,X2,...Xn‑ общие для двух отношений. Тогда естественным соединением отношений A и B называется отношение с заголовком (A1,A2,...,An, X1,X2,...Xn,B1,B2,...,Bm) и телом, содержащим множество кортежей (a1,a2,...,an,x1,x2,...,xn,b1, ,b2,...,bn), таких, что (a1,a2,...,an,x1,x2,...,xn) из A и (x1,x2,...,xn,b1,b2,...,bn) из B.

Естественное соединение производится по всем одинаковым атрибутам.


Например требуется соединить отношения Студенты и Оценки, для которой общим атрибутом является Ном_зач_книжки.

Студенты Оценки

ФИО Дата_рожд Ном_зач_книжки
Белков Ю.Г. 06.08.86
Романов О.Р. 12.04.90
Шариков А.И. 21.09.88
Код_дисциплины Ном_зач_книжки Оценки

Результатом операции естественного соединения будет отношение

ФИО Дата_рожд Ном_зач_книжки Код_дисциплины Оценки
Белков Ю.Г. 06.08.86
Белков Ю.Г. 06.08.86
Романов О.Р. 12.04.90
Романов О.Р. 12.04.90
Шариков А.И. 21.09.88

Перечислите основные отличия SQL от процедурных языков программирования. Назовите существующие формы языка SQL. Охарактеризуйте основные категории команд языка SQL (DDL, DML, DQL, DCL и др.) и перечислите основные достоинства языка SQL.

Структурированный язык запросов SQL был разработан в 1970 г. корпорацией IBM как язык управления реляционных баз данных. Существует две формы SQL: Интерактивный и Вложенный. Как правило, обе формы работают одинаково, но используются различно.

Вложенный SQL состоит из команд SQL помещенных внутри программ, которые обычно написаны на некотором другом языке (Си, Delphi и др.). Это делает эти программы более мощными и эффективными.

Интерактивный SQL используется непосредственно в базе данных для осуществления к ней запросов пользователей. В этой форме SQL команда выполняется непосредственно после ее ввода, так что можно увидеть результат немедленно.

SQL относится к классу непроцедурных языков программирования.


Сейчас читают про: