Интересно нещо, което можете да направите с SQL, е да създадете изглед .
Изгледът е като таблица, освен че вместо да бъде реална таблица сам по себе си, той се изгражда динамично от резултата от заявка SELECT.
Нека използваме примера, който използвахме в урока за присъединяване:
CREATE TABLE people (
age INT NOT NULL,
name CHAR(20) NOT NULL PRIMARY KEY
);
CREATE TABLE cars (
brand CHAR(20) NOT NULL,
model CHAR(20) NOT NULL,
owner CHAR(20) NOT NULL PRIMARY KEY
);
Добавяме някои данни:
INSERT INTO people VALUES (37, 'Flavio');
INSERT INTO people VALUES (8, 'Roger');
INSERT INTO cars VALUES ('Ford', 'Fiesta', 'Flavio');
INSERT INTO cars VALUES ('Ford', 'Mustang', 'Roger');
Можем да създадем изглед, който наричаме car_age
който винаги съдържа връзката между модела на автомобила и възрастта на собственика му:
CREATE VIEW car_age AS SELECT model, age AS owner_age FROM people JOIN cars ON people.name = cars.owner;
Ето резултата, който можем да проверим с SELECT * FROM car_age
:
model | owner_age
----------------------+-----------
Fiesta | 37
Mustang | 8
Изгледът е постоянен и ще изглежда като таблица във вашата база данни. Можете да изтриете изглед с помощта на DROP VIEW
:
DROP VIEW car_age