Последние учебники веб-разработки
 

SQL Просмотры


Вид представляет собой виртуальную таблицу.

В этой главе показано, как создавать, обновлять и удалять вид.


SQL CREATE VIEW заявление

В SQL, вид представляет собой виртуальную таблицу на основе результата-набора оператора SQL.

Представление содержит строки и столбцы, так же, как реальный стол. Поля в представлении являются поля из одного или нескольких реальных таблиц в базе данных.

Вы можете добавлять функции SQL, WHERE и JOIN заявления на вид и представить данные, как если бы данные приходили из одной таблицы.

SQL CREATE VIEW Синтаксис

CREATE VIEW view_name AS
SELECT column_name(s)
FROM table_name
WHERE condition

Note: Вид всегда показывает актуальную информацию! Ядро базы данных воссоздает данные, используя SQL оператор вида по каждый раз, когда пользователь запрашивает вид.


SQL CREATE VIEW Примеры

Если у вас есть база данных Борей вы можете увидеть, что он имеет несколько видов, установленных по умолчанию.

Представление "Список Текущий продукт» перечислены все активные продукты (продукты, которые не прекращенного) из "Products" таблицы. Представление создается с помощью следующего SQL:

CREATE VIEW [Current Product List] AS
SELECT ProductID,ProductName
FROM Products
WHERE Discontinued=No

Мы можем запросить мнение выше следующим образом:

SELECT * FROM [Current Product List]

Согласно другой точке зрения в базе данных Борей выбирает каждый продукт в "Products" таблицы с ценой единицы продукции выше , чем средняя цена за единицу товара :

CREATE VIEW [Products Above Average Price] AS
SELECT ProductName,UnitPrice
FROM Products
WHERE UnitPrice>(SELECT AVG(UnitPrice) FROM Products)

Мы можем запросить мнение выше следующим образом:

SELECT * FROM [Products Above Average Price]

Другая точка зрения в базе данных Борей вычисляет общую продажу для каждой категории в 1997 Обратите внимание, что этот вид выбирает свои данные из другого представления под названием "Продажи продукции за 1997 год":

CREATE VIEW [Category Sales For 1997] AS
SELECT DISTINCT CategoryName,Sum(ProductSales) AS CategorySales
FROM [Product Sales for 1997]
GROUP BY CategoryName

Мы можем запросить мнение выше следующим образом:

SELECT * FROM [Category Sales For 1997]

Мы можем также добавить условие в запросе. Теперь мы хотим , чтобы увидеть полную продажу только для категории "Beverages" :

SELECT * FROM [Category Sales For 1997]
WHERE CategoryName='Beverages'

SQL Обновление View

Вы можете обновить вид, используя следующий синтаксис:

SQL CREATE OR REPLACE VIEW Синтаксис

CREATE OR REPLACE VIEW view_name AS
SELECT column_name(s)
FROM table_name
WHERE condition

Теперь мы хотим , чтобы добавить "Category" колонку в "Текущий список товаров" вид. Мы будем обновлять вид со следующим SQL:

CREATE OR REPLACE VIEW [Current Product List] AS
SELECT ProductID,ProductName,Category
FROM Products
WHERE Discontinued=No

SQL Отбрасывание View

Вы можете удалить вид с помощью команды DROP VIEW.

SQL DROP VIEW Синтаксис

DROP VIEW view_name