SQL Представлення
SQL CREATE VIEW Інструкція
У SQL Представлення — це віртуальна таблиця, заснована на наборі результатів SQL інструкції.
Представлення містить рядки та стовпці, як і справжня таблиця. Поля в представленні – це поля з однієї чи кількох реальних таблиць у базі даних.
Ви можете додати інструкції та функції SQL до представлення та представити дані так, ніби вони надходять із однієї таблиці.
Представлення створюється за допомогою інструкції CREATE VIEW
.
CREATE VIEW Синтаксис
CREATE VIEW view_name AS
SELECT column1, column2, ...
FROM table_name
WHERE condition;
Примітка: Представлення завжди показує актуальні дані! Механізм бази даних відтворює представлення кожного разу, коли користувач запитує його.
SQL CREATE VIEW Приклади
Наступний SQL створює представлення, яке показує всіх клієнтів із Brazil (Бразилії):
Приклад
CREATE VIEW [Brazil Customers] AS
SELECT CustomerName, ContactName
FROM Customers
WHERE Country = 'Brazil';
Ми можемо запитати представлення вище наступним чином:
Приклад
SELECT * FROM [Brazil Customers];
Наступний SQL створює представлення, яке вибирає кожен продукт у таблиці "Products" з ціною, вищою за середню ціну:
Приклад
CREATE VIEW [Products Above Average Price] AS
SELECT ProductName, Price
FROM Products
WHERE Price > (SELECT AVG(Price) FROM Products);
Ми можемо запитати представлення вище наступним чином:
Приклад
SELECT * FROM [Products Above Average Price];
SQL Оновлення представлення
Представлення можна оновити за допомогою інструкції CREATE OR REPLACE VIEW
.
SQL CREATE OR REPLACE VIEW Синтаксис
CREATE OR REPLACE VIEW view_name AS
SELECT column1, column2, ...
FROM table_name
WHERE condition;
Наступний SQL додає стовпець "City" до представлення "Brazil Customers":
Приклад
CREATE OR REPLACE VIEW [Brazil Customers] AS
SELECT CustomerName, ContactName, City
FROM Customers
WHERE Country = 'Brazil';
SQL Видалення представлення
Представлення видаляється інструкцією DROP VIEW
.
SQL DROP VIEW Синтаксис
DROP VIEW view_name;
Наступний SQL видаляє представлення "Brazil Customers":
Приклад
DROP VIEW [Brazil Customers];