ІІ. В умові відбору Client = Kod_Clienta порівнюються стовпчики із двох таблиць. Такі стовпчики називаються зв’язаними.
Зауважимо, що в операторі SELECT ніде не сказано як саме повинен виконуватися запит. Там немає вказівок типу „почніть з замовлень” або „почніть з клієнтів”. Замість цього в запиті сказано що ми повинні отримати в результаті, а спосіб отримання в результатів – залишається за СУБД.
Така умова відбору зменшує кількість пар рядків таблиці результатів: „Включити в таблицю результатів запиту тільки ті пари рядків, для яких ідентифікатор клієнта (Client) в таблиці Zamovlennia дорівнює ідентифікатору клієнта (Kod_Clienta) в таблиці Clients”.
12.2.1. Запити з використанням відношення „головна – підлегла” таблиці (предок – нащадок)
Із всіх багатотабличних запитів на практиці найбільш поширені запити до двох таблиць, які зв’язані відношенням „головна – підлегла”. Запит про замовлення і клієнтів – саме такий.
У кожного замовлення (нащадок) є відповідний клієнт (предок), і кожний клієнт (предок) може мати багато замовлень (нащадків). Таблиці, із яких беруться рядки для формування пари рядків результатів запиту, зв’язані відношенням „головна (Clients) – підлегла (Zamovlennia)”.
В реляційній базі даних первинні (головні) і зовнішні ключі створюють відношення предок /нащадок .
Clients
Kod_Clienta
..
..
..
Zamovlennia
..
..
Client
..
..
Таблиця, яка містить зовнішній ключ – це нащадок (підлегла таблиця), таблиця, у якій відповідний стовпчик є первинним ключем, - це предок (головна таблиця). Щоб в запиті використати відношення предок/нащадок, потрібно задати умову відбору, у якій первинний ключ порівнюється із зовнішнім ключем: