Книга: Firebird РУКОВОДСТВО РАЗРАБОТЧИКА БАЗ ДАННЫХ
Соединения
Соединения
Соединение используется в операторах SELECT для генерации ненормализованных наборов, содержащих столбцы из нескольких таблиц, которые хранят связанные данные. Множества столбцов, выбранных из каждой таблицы, называются потоками. Процесс соединения объединяет выбранные столбцы в единый выходной набор данных. Простейшим случаем является соединение двух таблиц, которые связаны соответствием элементов ключа, встречающихся в обеих таблицах.
Для создания связи ключевые столбцы выбираются на основании того, что они реализуют недвусмысленное отношение - т. е. ключ в левой таблице соединения будет отыскивать только те строки из правой таблицы, которые соответствуют отношению, и он будет отыскивать все такие строки. Обычно связь осуществляется между уникальным ключом левой таблицы (первичный или любой другой уникальный ключ) и формальным или подразумеваемым внешним ключом правой таблицы.
Тем не менее условия соединения не ограничены столбцами первичного и внешнего ключей; сервер допускает в выходном наборе данных дубликаты строк. Дублированные строки могут стать причиной нежелательного результата. По этому вопросу обратитесь к замечаниям в разд. "Темы оптимизации".
- Виды многотабличных запросов
- Соединения
- Подзапросы
- Запросы UNION
- Соединения
- Внутреннее соединение
- Внешние соединения
- Перекрестные соединения
- Естественные соединения
- Двусмысленность в запросах JOIN
- Алиасы таблиц
- Внутренний курсор
- Реентерабельные соединения
- Подзапросы
- Задание столбца при использовании подзапроса
- Поиск с использованием подзапроса
- Добавление данных с использованием подзапроса с соединениями
- Оператор UNION
- Наборы, совместимые для объединения
- Использование столбцов времени выполнения в объединениях
- Условия поиска и упорядочивания
- Реентерабельные запросы UNION
- UNION ALL
- Темы оптимизации: планы запросов и оптимизатор
- Глава 11. Соединения точка-точка и ретрансляторы
- 2. Операции декартового произведения и естественного соединения
- 4. Варианты операций соединения
- 5. Операции внутреннего соединения.
- 6. Операция естественного соединения.
- 7. Операция левого внешнего соединения.
- 8. Операция правого внешнего соединения.
- 9. Операция полного внешнего соединения.
- Как узнать скорость соединения между компьютерами?
- 10.7.1. Перехват соединения
- 14.5.4. Перехват соединения
- Настройка модемного соединения