Базы данных. Основы SQL реляционных баз данных. Копейкин М.В - 105 стр.

UptoLike

Фамилия Название_ отдела Точка Кол-во_
дней
Иванов КТиПО Мурманск 8
Петухов КТиПО Мурманск 10
Рис. 5.2. Длительность командировки в Мурманске
Здесь с помощью подзапроса, размещенного в четырех последних строках запроса,
описывается процесс определения длительности командировки для каждого,
приезжавшего в Мурманск и закончившего там работу. Механизм реализации
подзапросов будет подробно описан в параграфе 5
.3. Там же будет рассмотрено, как и
для чего вводится псевдоним X для имени таблицы КОМАНДИРОВКИ (рис. 2.5).
Для закрепления материала по данному разделу сформулируем следующий запрос:
SELECT P.Фамилия, B.Название_ отдела, K.Точка
FROM Отдел_Сотрудник S , Сотрудник P , Отдел B , Командировки K
WHERE P.Ид_Сотр=S.Ид_Сотр
AND S.Ид_Отд=B.Ид_Отд AND S.Ид_Сотр=К.Ид_Сотр
AND B.Название
_ отдела="Кафедра КТиПО"
AND К.Точка="Мурманск" AND К.Дата_убытия IS NOT NULL A
N
На обычном языке этот запрос уточняет: "Кто из сотрудников указанной кафедры
был в Мурманске после февраля" (рис. 5.3).
Фамилия Название_отдела Точка
Петухов КТиПО Мурманск
Рис. 5.3. Уточняющий запрос по Мурманску
5.1.2. Эквисоединение таблиц
Объединения, которые используют предикаты, основанные на равенствах,
называются объединениями по равенству (эквисоединениями). Практически все наши
примеры, использующиеся ранее, относились именно к этой категории, потому что все
условия в предложениях WHERE базировались на математических выражениях,
использующих знак равно ( = ). Строки вида
Отдел_ Сотрудник.Ид_Отд=Отдел.Ид_Отд
Отдел_ Сотрудник.Ид_Сотр=Командировки
.Ид_Сотр
Отдел.Название_ отдела="Кафедра КТиПО"
Командировки.Точка="Мурманск"