ВВЕДЕНИЕ В СИСТЕМЫ УПРАВЛЕНИЯ БАЗАМИ ДАННЫХ



Отбор данных из нескольких таблиц - часть 2


Пример 18. Соединение таблиц по произвольному условию. Рассмотрим таблицы поставщиков и деталей, которыми присвоен некоторый статую (см. пример 8 из предыдущей главы):

PNUM

PNAME

PSTATUS

1 Иванов 4
2 Петров 1
3 Сидоров 2

Таблица 1 Отношение P (Поставщики)

DNUM

DNAME

DSTATUS

1 Болт 3
2 Гайка 2
3 Винт 1

Таблица 2 Отношение D (Детали)

Ответ на вопрос "какие поставщики имеют право поставлять какие детали?" дает следующий запрос:

SELECT P.PNUM, P.PNAME, P.PSTATUS, D.DNUM, D.DNAME, D.DSTATUS FROM P, D WHERE P.PSTATUS >= D.DSTATUS;

В результате получим следующую таблицу:

PNUM

PNAME

PSTATUS

DNUM

DNAME

DSTATUS

1 Иванов 4 1 Болт 3
1 Иванов 4 2 Гайка 2
1 Иванов 4 3 Винт 1
2 Петров 1 3 Винт 1
3 Сидоров 2 2 Гайка 2
3 Сидоров 2 3 Винт 1




Содержание  Назад  Вперед