Объединение таблиц через справочную целостность

Эта особенность часто используется просто для эксплуатации связей, встроенных в базу данных. В предыдущем примере мы установили связь между двум таблицами в объединении. Это прекрасно. Но эти таблицы, уже были соединены через snum поле. Эта связь называется состоянием справочной целостности, как мы уже говорили в Главе 1. Используя объединение, можно извлекать данные в терминах этой связи. Например, чтобы показать имена всех заказчиков соответст- вующих продавцам которые их обслуживают, мы будем использовать такой запрос:
SELECT Customers.cname, Salespeople.sname FROM Customers, Salespeople WHERE Salespeople.snum = Customers.snum;

Вывод этого запроса показывается в Рисунке 8.2.
Это — пример объединения, в котором столбцы используются для определения предиката запроса, и в этом случае, snum столбцы из обеих таблиц, удалены из вывода. И это прекрасно. Вывод показывает какие заказчики каким продавцом обслуживаются; значения поля snum которые устанавливают связь — отсутствуют. Однако если вы введете их в вывод, то вы должны или удостовериться что вывод понятен сам по себе или обеспечить комментарий к данным при выводе.

SQL Execution Log

SELECT Customers.cname, Salespeople.sname, FROM Salespeople, Customers
WHERE Salespeople.snum = Customers.snum

cname
sname

Hoffman
Peel

Giovanni
Axelrod

Liu
Serres

Grass
Serres

Clemens
Peel

Cisneros
Rifkin

Pereira
Motika

Рисунок 8.2: Объединение продавцов с их заказчикам
 

‹ Создание объединения
Вверх
Объединения таблиц по равенству значений в столбцах и другие виды объединений ›

Айтистанция
Добавить комментарий

Adblock
detector