Обновление представлений
Допустим, мы имеем представление:
CREATE VIEW Salesown
AS SELECT snum, sname, city
FROM Salespeople;
По сути, оно просто ограничивает доступ к таблице Salespeople тремя полями.
Это представление можно модифицировать командами обновления DML. Следует понимать, что при этом модификации воздействуют только на лежащую в его основе таблицу:
UPDATE Salesown
SET city = ‘Polo Alto’
WHERE snum = 1004;
Групповые представления.
Это представления, которые в своем запросе содержат GROUP BY.
Пример. Предположим, что каждый день нужно отслеживать количество покупателей, имеющих заказы; количество продавцов, получивших заказы; количество заказов, среднее количество заказов, общее количество заказов.
Вместо сложного запроса можно сначала сконструировать представление:
CREATE VIEW Total for day
AS SELECT odate, COUNT (DISTINCT cnum),
COUNT (DISTINCT cnum), COUNT (onum), AVG (amt),
SUM (amt)
FROM Orders
GROUP BY odate;
Теперь можно получить необходимую информацию с помощью простейших запросов:
SELECT * здесь просто указывать что конкретно
FROM Total for day;
То есть идея здесь подобна идее подпрограммы в языке программирования.
Дата добавления: 2014-11-29; просмотров: 762;