Представления и соединения

(не путать с объединениями UNION).

Ясно, что наиболее типично для представлений получать информацию из многих таблиц или других VIEWS. Например, представление, показывающее для каждого заказа имена продавца и покупателя:

CREATE VIEW Nameorders

AS SELECT onum, amt, a.snum, sname, cname

FROM Orders a, Customers b, Sales people c

WHERE a.cnum = b.cnum

AND a.snum = c.snum;

Теперь можно выбрать все заказы покупателя или продавца, например (для продавца):

SELECT *

FROM Nameorders

WHERE sname = ‘Ivanov’;

В соединении могут участвовать комбинации представлений и таблиц. Например, чтобы увидеть заказы ‘Petrov’’а и его комиссионные:

выражение

SELECT a.sname, cname, amt*comm

FROM Nameorders a, Sales people b

WHERE a.sname = ‘Petrov’

AND b.snum = a.snum;