PostgreSQL Создать представление с примером
Что такое PostgreSQL Вид?
In PostgreSQL, представление представляет собой псевдотаблицу. Это означает, что представление не является настоящей таблицей. Однако мы можем ВЫБРАТЬ ее как обычную таблицу. Представление может содержать все или некоторые столбцы таблицы. Представление также может быть представлением более чем одной таблицы.
Таблицы называются базовыми таблицами. При создании представления вам просто нужно создать запрос, а затем дать ему имя, что делает его полезным инструментом для упаковки сложных и часто используемых запросов.
Создающий PostgreSQL Виды
Чтобы создать PostgreSQL view, мы используем оператор CREATE VIEW. Вот синтаксис этого утверждения:
CREATE [OR REPLACE] VIEW view-name AS SELECT column(s) FROM table(s) [WHERE condition(s)];
Параметр OR REPLACE заменит представление, если оно уже существует. Если этот параметр опущен и представление уже существует, будет возвращена ошибка.
Параметр view-name — это имя представления, которое вам нужно создать.
Условия WHERE являются опциями, и они должны быть удовлетворены, чтобы любая запись была добавлена в представление.
Рассмотрим таблицу цен, приведенную ниже:
Цена:
Давайте создадим представление из приведенной выше таблицы:
CREATE VIEW Price_View AS SELECT id, price FROM Price WHERE price > 200;
Приведенная выше команда создаст представление на основе Оператор SELECT. В представление будут добавлены только записи, цена которых превышает 200. Представлению присвоено имя Price_View. Давайте запросим его, чтобы увидеть его содержимое:
SELECT * FROM Price_View;
Это возвращает следующее:
Несмотря на то, что базовая таблица содержит 4 записи, в представление были добавлены только 2.
Здесь мы можем добавить в представление только один столбец. Создадим представление, включающее только один столбец таблицы «Цены»:
CREATE VIEW Price_View2 AS SELECT price FROM Price WHERE price > 200;
Представлению присвоено имя Price_View2, и оно включает только столбец цен таблицы цен. Давайте запросим представление, чтобы увидеть его содержимое:
SELECT * FROM Price_View2;
Это возвращает следующее:
Изменение PostgreSQL Виды
Определение представления можно изменить, не удаляя его. Это делается с помощью оператора CREATE OR REPLACE VIEW.
Давайте продемонстрируем это, обновив представление с именем Price_View2.
Цена_Просмотр2:
Таблица книги выглядит следующим образом:
Книга:
Таблица цен выглядит следующим образом:
Цена:
Следующий запрос поможет нам обновить представление Price_View2:
CREATE or REPLACE VIEW Price_View2 AS SELECT price, name FROM Book INNER JOIN Price ON Book.id = Price.id WHERE price > 200;
Давайте теперь запросим представление, чтобы увидеть его содержимое:
Представление было изменено, и теперь у нас есть два столбца из двух разных таблиц. Это было достигнуто с помощью оператора JOIN.
Удаление PostgreSQL Виды
Каждый раз, когда вам нужно удалить PostgreSQL вид. Вы можете использовать оператор DROP VIEW. Вот синтаксис оператора:
DROP VIEW [IF EXISTS] view-name;
Параметр view-name — это имя представления, которое необходимо удалить.
В этом синтаксисе IF EXISTS не является обязательным. Это только требуется. Если вы не укажете его и попытаетесь удалить несуществующее представление, вы получите сообщение об ошибке.
Например, чтобы удалить представление с именем Price_View2, мы можем выполнить следующий оператор:
DROP VIEW Price_View2;
Представление будет удалено.
Использование pgAdmin
Теперь посмотрим, как эти действия можно выполнить с помощью pgAdmin.
Создающий PostgreSQL Виды
Чтобы сделать то же самое через pgAdmin, сделайте следующее:
Шаг 1) Войдите в свою учетную запись pgAdmin.
Шаг 2)
- На панели навигации слева нажмите «Базы данных».
- Нажмите Демо.
Шаг 3) Введите запрос в редакторе запросов:
CREATE VIEW Price_View AS SELECT id, price FROM Price WHERE price > 200;
Шаг 4) Нажмите кнопку «Выполнить».
Шаг 5) Чтобы просмотреть содержимое представления, выполните следующие действия:
- Введите следующую команду в редакторе запросов:
- Нажмите кнопку «Выполнить».
SELECT * FROM Price_View;
Это вернет следующее:
Чтобы создать представление Price_View2, выполните следующие действия:
Шаг 1) Введите следующий запрос в редакторе запросов:
CREATE VIEW Price_View2 AS SELECT price FROM Price WHERE price > 200;
Шаг 2) Нажмите кнопку «Выполнить».
Шаг 3) Чтобы увидеть содержимое представления, выполните следующие действия:
- Введите следующий запрос в редакторе запросов:
- Нажмите кнопку «Выполнить».
SELECT * FROM Price_View2;
Это вернет следующее:
Изменение PostgreSQL Виды
Чтобы сделать то же самое через pgAdmin, сделайте следующее:
Шаг 1) Войдите в свою учетную запись pgAdmin.
Шаг 2)
- На панели навигации слева нажмите «Базы данных».
- Нажмите Демо.
Шаг 3) Введите запрос в редакторе запросов:
CREATE or REPLACE VIEW Price_View2 AS SELECT price, name FROM Book INNER JOIN Price ON Book.id = Price.id WHERE price > 200;
Шаг 4) Нажмите кнопку «Выполнить».
Шаг 5) Введите следующий запрос в редакторе запросов:
SELECT * FROM Price_View2;
Это вернет следующее:
Удаление PostgreSQL Виды
Чтобы сделать то же самое через pgAdmin, сделайте следующее:
Шаг 1) Войдите в свою учетную запись pgAdmin.
Шаг 2)
- На панели навигации слева нажмите «Базы данных».
- Нажмите Демо.
Шаг 3) Введите запрос в редакторе запросов:
DROP VIEW Price_View2;
Шаг 4) Нажмите кнопку «Выполнить».
Представление будет удалено.
Итого
- A PostgreSQL представление — это псевдотаблица, то есть это не настоящая таблица.
- Представление может быть создано из одной или нескольких таблиц.
- Таблицы, на основе которых создается представление, называются базовыми таблицами.
- Чтобы создать представление, мы используем оператор CREATE OR REPLACE VIEW.
- Чтобы изменить определение представления, мы используем оператор CREATE OR REPLACE VIEW.
- Чтобы удалить представление, мы используем оператор DROP VIEW.
Загрузите базу данных, используемую в этом руководстве.