PostgreSQL Создать представление с примером

Что такое представление PostgreSQL?

В PostgreSQL представление представляет собой псевдотаблицу. Это означает, что представление не является настоящей таблицей. Однако мы можем ВЫБРАТЬ ее как обычную таблицу. Представление может содержать все или некоторые столбцы таблицы. Представление также может быть представлением более чем одной таблицы.

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

Создание представлений PostgreSQL

Чтобы создать представление PostgreSQL, мы используем оператор CREATE VIEW. Вот синтаксис этого утверждения:

CREATE [OR REPLACE] VIEW view-name AS
  SELECT column(s)
  FROM table(s)
  [WHERE condition(s)];

Параметр OR REPLACE заменит представление, если оно уже существует. Если этот параметр опущен и представление уже существует, будет возвращена ошибка.

Параметр view-name — это имя представления, которое вам нужно создать.

Условия WHERE являются опциями, и они должны быть удовлетворены, чтобы любая запись была добавлена ​​в представление.

Рассмотрим таблицу цен, приведенную ниже:

Price:

Создание представлений PostgreSQL

Давайте создадим представление из приведенной выше таблицы:

CREATE VIEW Price_View AS
  SELECT id, price
  FROM Price
  WHERE price > 200;

Приведенная выше команда создаст представление на основе Оператор SELECT. В представление будут добавлены только записи, цена которых превышает 200. Представлению присвоено имя Price_View. Давайте запросим его, чтобы увидеть его содержимое:

SELECT *
FROM Price_View;

Это возвращает следующееwing:

Создание представлений PostgreSQL

Несмотря на то, что базовая таблица содержит 4 записи, в представление были добавлены только 2.

Здесь мы можем добавить в представление только один столбец. Создадим представление, включающее только один столбец таблицы «Цены»:

CREATE VIEW Price_View2 AS
  SELECT price
  FROM Price
  WHERE price > 200;

Представлению присвоено имя Price_View2, и оно включает только столбец цен таблицы цен. Давайте запросим представление, чтобы увидеть его содержимое:

SELECT *
FROM Price_View2;

Это возвращает следующееwing:

Создание представлений PostgreSQL

Изменение представлений PostgreSQL

Определение представления можно изменить, не удаляя его. Это делается с помощью оператора CREATE OR REPLACE VIEW.

Давайте продемонстрируем это, обновив представление с именем Price_View2.

Цена_Просмотр2:

Изменение представлений PostgreSQL

Таблица книги выглядит следующим образом:

Книга:

Изменение представлений PostgreSQL

Таблица цен выглядит следующим образом:

Price:

Изменение представлений PostgreSQL

Фоллоwing запрос поможет нам обновить представление 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;

Давайте теперь запросим представление, чтобы увидеть его содержимое:

Изменение представлений PostgreSQL

Представление было изменено, и теперь у нас есть два столбца из двух разных таблиц. Это было достигнуто с помощью оператора JOIN.

Удаление представлений PostgreSQL

В любое время вам нужно удалить представление PostgreSQL. Вы можете использовать оператор DROP VIEW. Вот синтаксис оператора:

DROP VIEW [IF EXISTS] view-name;

Параметр view-name — это имя представления, которое необходимо удалить.

В этом синтаксисе IF EXISTS не является обязательным. Это только требуется. Если вы не укажете его и попытаетесь удалить несуществующее представление, вы получите сообщение об ошибке.

Например, чтобы удалить представление с именем Price_View2, мы можем запустить следующую команду:wing заявление:

DROP VIEW Price_View2;

Представление будет удалено.

Использование pgAdmin

Теперь посмотрим, как эти действия можно выполнить с помощью pgAdmin.

Создание представлений PostgreSQL

Чтобы сделать то же самое через pgAdmin, сделайте следующее:

Шаг 1) Войдите в свою учетную запись pgAdmin.

Шаг 2)

  1. На панели навигации слева нажмите «Базы данных».
  2. Нажмите Демо.

Создание представлений PostgreSQL с помощью pgAdmin

Шаг 3) Введите запрос в редакторе запросов:

CREATE VIEW Price_View AS
  SELECT id, price
  FROM Price
  WHERE price > 200;

Шаг 4) Нажмите кнопку «Выполнить».

Создание представлений PostgreSQL с помощью pgAdmin

Шаг 5) Чтобы просмотреть содержимое представления, выполните следующие действия.wing:

  1. Введите следующееwing команда в редакторе запросов:
  2. SELECT *
    FROM Price_View;
    
  3. Нажмите кнопку «Выполнить».

Создание представлений PostgreSQL с помощью pgAdmin

Это вернет следующееwing:

Создание представлений PostgreSQL с помощью pgAdmin

Чтобы создать представление Price_View2, выполните следующие действия.wing:

Шаг 1) Введите следующееwing запрос в редакторе запросов:

CREATE VIEW Price_View2 AS
  SELECT price
  FROM Price
  WHERE price > 200;

Шаг 2) Нажмите кнопку «Выполнить».

Создание представлений PostgreSQL с помощью pgAdmin

Шаг 3) Чтобы просмотреть содержимое представления, выполните следующие действия.wing:

  1. Введите следующееwing запрос в редакторе запросов:
  2. SELECT *
    FROM Price_View2;
    
  3. Нажмите кнопку «Выполнить».

Создание представлений PostgreSQL с помощью pgAdmin

Это вернет следующееwing:

Создание представлений PostgreSQL с помощью pgAdmin

Изменение представлений PostgreSQL

Чтобы сделать то же самое через pgAdmin, сделайте следующее:

Шаг 1) Войдите в свою учетную запись pgAdmin.

Шаг 2)

  1. На панели навигации слева нажмите «Базы данных».
  2. Нажмите Демо.

Изменение представлений PostgreSQL с помощью pgAdmin

Шаг 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) Нажмите кнопку «Выполнить».

Изменение представлений PostgreSQL с помощью pgAdmin

Шаг 5) Введите следующееwing запрос в редакторе запросов:

SELECT * 
FROM Price_View2;

Это вернет следующееwing:

Изменение представлений PostgreSQL с помощью pgAdmin

Удаление представлений PostgreSQL

Чтобы сделать то же самое через pgAdmin, сделайте следующее:

Шаг 1) Войдите в свою учетную запись pgAdmin.

Шаг 2)

  1. На панели навигации слева нажмите «Базы данных».
  2. Нажмите Демо.

Удаление представлений PostgreSQL с помощью pgAdmin

Шаг 3) Введите запрос в редакторе запросов:

DROP VIEW Price_View2;

Шаг 4) Нажмите кнопку «Выполнить».

Удаление представлений PostgreSQL с помощью pgAdmin

Представление будет удалено.

Итоги

  • A PostgreSQL представление — это псевдотаблица, то есть это не настоящая таблица.
  • Представление может быть создано из одной или нескольких таблиц.
  • Таблицы, на основе которых создается представление, называются базовыми таблицами.
  • Чтобы создать представление, мы используем оператор CREATE OR REPLACE VIEW.
  • Чтобы изменить определение представления, мы используем оператор CREATE OR REPLACE VIEW.
  • Чтобы удалить представление, мы используем оператор DROP VIEW.

Загрузите базу данных, используемую в этом руководстве.