Составители:
Рубрика:
Глава 5. Объединение таблиц
5.1. Выполнение реляционных объединений
В данном учебном пособии не рассматриваются вопросы, связанные с
проектированием моделей баз данных, а эти вопросы по существу являются
центральными в проектировании баз данных [13, 27]. Именно правильно построенная
модель, а точнее, методология, используемая при построении концептуальной модели,
обеспечивает жизнеспособность проекта [4, 17, 18, 30].
На данном этапе можно просто принять к сведению, что базы данных - это
множество взаимосвязанных таблиц в терминологии традиционных реляционных
СУБД. При проектировании стремятся создавать таблицы, в каждой из которых
содержалась бы информация об одном и только об одном типе сущностей. Это облегчает
модификацию базы данных и поддержание ее целостности.
В предыдущих примерах Вы уже использовали SQL для работы с одной таблицей.
В SQL также
реализованы возможности "соединять" или "объединять" несколько таблиц
и так называемые "вложенные подзапросы".
5.1.1. Естественное соединение таблиц (natural join)
Например, чтобы получить перечень фамилий преподавателей кафедры КТиПО,
которые были в командировке в Мурманске (базовые таблицы рис. 2.3, рис. 2.1, рис. 2.2,
рис. 2.5), возможен запрос:
SELECT Фамилия, Название_ отдела, Точка
FROM Отдел_ Сотрудник, Сотрудник, Отдел, Командировки
WHERE Сотрудник.Ид_Сотр=Отдел_ Сотрудник.Ид_Сотр AND
Отдел_ Сотрудник.Ид_Отд=Отдел.Ид_Отд AND
Отдел_ Сотрудник.Ид_
Сотр=Командировки.Ид_Сотр AND
Отдел.Название_ отдела=’Кафедра КТиПО’ AND
Командировки.Точка="Мурманск" AND
Командировки.Дата_ убытия IS NOT NULL;
Результатом запроса будет отношение (см. рис. 5.1).
Страницы
- « первая
- ‹ предыдущая
- …
- 100
- 101
- 102
- 103
- 104
- …
- следующая ›
- последняя »
