PostgreSQL Създаване на изглед с пример

Какво е PostgreSQL Вижте?

In PostgreSQL, изгледът е псевдотаблица. Това означава, че изгледът не е истинска таблица. Можем обаче да го ИЗБЕРЕМ като обикновена таблица. Един изглед може да има всички или някои от колоните на таблицата. Един изглед може също да бъде представяне на повече от една таблица.

Таблиците се наричат ​​базови таблици. Когато създавате изглед, трябва само да създадете заявка, след което да й дадете име, което го прави полезен инструмент за обвиване на сложни и често използвани заявки.

Създаване PostgreSQL Прегледи

За да създадете PostgreSQL изглед, използваме израза CREATE VIEW. Ето синтаксиса на това изявление:

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

Параметърът OR REPLACE ще замени изгледа, ако вече съществува. Ако е пропуснато и изгледът вече съществува, ще бъде върната грешка.

Параметърът име на изглед е името на изгледа, който трябва да създадете.

Условието(ята) WHERE са опции и те трябва да бъдат изпълнени, за да може всеки запис да бъде добавен към изгледа.

Разгледайте таблицата с цените, дадена по-долу:

Цена:

Създаване PostgreSQL Прегледи

Нека създадем изглед от горната таблица:

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

Горната команда ще създаде изглед въз основа на SELECT израз. Само записите, чиято цена е по-голяма от 200, ще бъдат добавени към изгледа. Изгледът получи името Price_View. Нека го потърсим, за да видим съдържанието му:

SELECT *
FROM Price_View;

Това връща следното:

Създаване PostgreSQL Прегледи

Въпреки че базовата таблица има 4 записа, само 2 бяха добавени към изгледа.

Тук можем да добавим само една колона към изгледа. Нека създадем изглед, който включва само една колона от таблицата с цени:

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

Изгледът е наречен Price_View2 и включва само ценовата колона от таблицата с цени. Нека направим запитване към изгледа, за да видим съдържанието му:

SELECT *
FROM Price_View2;

Това връща следното:

Създаване PostgreSQL Прегледи

Промяна PostgreSQL Прегледи

Дефиницията на изглед може да се промени, без да се налага да я изпускате. Това се прави с помощта на израза CREATE OR REPLACE VIEW.

Нека демонстрираме това, като актуализираме изгледа с име Price_View2.

Price_View2:

Промяна PostgreSQL Прегледи

Таблицата на книгата е както следва:

Книга:

Промяна PostgreSQL Прегледи

Ценовата таблица е както следва:

Цена:

Промяна PostgreSQL Прегледи

Следната заявка ще ни помогне да актуализираме изгледа 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 Прегледи

Всеки път, когато трябва да изтриете a PostgreSQL изглед. Можете да използвате командата DROP VIEW. Ето синтаксиса на израза:

DROP VIEW [IF EXISTS] view-name;

Параметърът име на изглед е името на изгледа, който трябва да бъде изтрит.

В този синтаксис АКО СЪЩЕСТВУВА не е задължително. Изисква се само. Ако не го посочите и се опитате да изтриете изглед, който не съществува, ще получите грешка.

Например, за да премахнем изгледа с име Price_View2, можем да изпълним следния оператор:

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) За да видите съдържанието на изгледа, направете следното:

  1. Въведете следната команда в редактора на заявки:
  2. SELECT *
    FROM Price_View;
    
  3. Щракнете върху бутона Изпълнение.

Създаване PostgreSQL Изгледи с помощта на pgAdmin

Това ще върне следното:

Създаване PostgreSQL Изгледи с помощта на pgAdmin

За да създадете изглед Price_View2, направете следното:

Стъпка 1) Въведете следната заявка в редактора на заявки:

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

Стъпка ) Щракнете върху бутона Изпълнение.

Създаване PostgreSQL Изгледи с помощта на pgAdmin

Стъпка 3) За да видите съдържанието на изгледа, направете следното:

  1. Въведете следната заявка в редактора на заявки:
  2. SELECT *
    FROM Price_View2;
    
  3. Щракнете върху бутона Изпълнение.

Създаване PostgreSQL Изгледи с помощта на pgAdmin

Това ще върне следното:

Създаване 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) Въведете следната заявка в редактора на заявки:

SELECT * 
FROM Price_View2;

Това ще върне следното:

Промяна PostgreSQL Изгледи с помощта на pgAdmin

Изтриване PostgreSQL Прегледи

За да постигнете същото чрез pgAdmin, направете следното:

Стъпка 1) Влезте във вашия pgAdmin акаунт.

Стъпка 2)

  1. От лентата за навигация вляво щракнете върху Бази данни.
  2. Щракнете върху Демо.

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

Стъпка 3) Въведете заявката в редактора на заявки:

DROP VIEW Price_View2;

Стъпка 4) Щракнете върху бутона Изпълнение.

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

Изгледът ще бъде изтрит.

Oбобщение

  • A PostgreSQL view е псевдо-таблица, което означава, че не е истинска таблица.
  • Изглед може да се създаде от една или повече таблици.
  • Таблиците, от които се създава изглед, са известни като базови таблици.
  • За да създадем изглед, използваме командата CREATE OR REPLACE VIEW.
  • За да променим дефиницията на изглед, ние използваме командата CREATE OR REPLACE VIEW.
  • За да изтрием изглед, използваме командата DROP VIEW.

Изтеглете базата данни, използвана в този урок