PostgreSQL Creați vizualizare cu exemplu

⚡ Rezumat inteligent

PostgreSQL Vizualizările sunt pseudo-tabele construite dintr-o interogare SELECT stocată, permițându-vă să încadrați interogări complexe sau utilizate frecvent în spatele unui singur nume pe care îl puteți citi, actualiza sau șterge ca un tabel obișnuit.

  • 🗂️ Pseudo-Tabel: O vizualizare stochează o interogare, nu date, dar o SELECTAȚI ca pe un tabel.
  • 🛠️ Crea: CREATE VIEW denumește o interogare SELECT, chiar și în mai multe tabele de bază, pentru o reutilizare ușoară.
  • ♻️ A inlocui: CREATE OR REPLACE VIEW modifică o vizualizare fără a o eliminaping aceasta.
  • 🗑️ Cădere brusca: DROP VIEW elimină o vizualizare, iar IF EXISTS evită o eroare.
  • 🤖 Ajutor AI: Asistenții inteligenți artificiali generează definiții de vizualizări și sugerează ce interogări să fie încapsulate.

PostgreSQL Creați vizualizare

Ce Este PostgreSQL Vedere?

In PostgreSQL, o vedere este un pseudo-tabel. Aceasta înseamnă că o vedere nu este o masă reală. Cu toate acestea, îl putem SELECTA ca un tabel obișnuit. O vizualizare poate avea toate sau unele dintre coloanele tabelului. O vedere poate fi, de asemenea, o reprezentare a mai multor tabele.

Tabelele sunt denumite tabele de bază. Când creați o vizualizare, trebuie doar să creați o interogare, apoi să îi dați un nume, ceea ce o face un instrument util pentru încadrareaping interogări complexe și utilizate frecvent.

Crearea PostgreSQL Vizualizări

Pentru a crea un PostgreSQL view, folosim instrucțiunea CREATE VIEW. Iată sintaxa acestei declarații:

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

Parametrul OR REPLACE va înlocui vizualizarea dacă aceasta există deja. Dacă este omisă și vizualizarea există deja, va fi returnată o eroare.

Parametrul view-name este numele vizualizării pe care trebuie să o creați.

Condiția (condițiile) WHERE este (sunt) opțională (opționale) și trebuie îndeplinită (îndeplinite) pentru ca orice înregistrare să fie adăugată în vizualizare.

Luați în considerare tabelul de prețuri de mai jos:

Preț:

Crearea PostgreSQL Vizualizări

Să creăm o vedere din tabelul de mai sus:

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

Comanda de mai sus va crea o vizualizare bazată pe instrucțiunea SELECT. Numai înregistrările în care prețul este mai mare de 200 vor fi adăugate la vizualizare. Vederii a primit numele Price_View. Să-l interogăm pentru a-i vedea conținutul:

SELECT *
FROM Price_View;

Aceasta returnează următoarele:

Crearea PostgreSQL Vizualizări

Chiar dacă tabelul de bază are 4 înregistrări, doar 2 au fost adăugate la vizualizare.

Aici, putem adăuga o singură coloană la vizualizare. Să creăm o vizualizare care include o singură coloană din tabelul Preț:

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

Vizualizării a primit numele Price_View2 și include doar coloana de preț din tabelul de prețuri. Să interogăm vizualizarea pentru a-i vedea conținutul:

SELECT *
FROM Price_View2;

Aceasta returnează următoarele:

Crearea PostgreSQL Vizualizări

Schimbarea PostgreSQL Vizualizări

Definiția unei vederi poate fi modificată fără a fi nevoie să o renunțe. Acest lucru se face folosind instrucțiunea CREATE OR REPLACE VIEW.

Să demonstrăm acest lucru actualizând vizualizarea numită Price_View2.

Price_View2:

Schimbarea PostgreSQL Vizualizări

Tabelul Cărții este următorul:

Carte:

Schimbarea PostgreSQL Vizualizări

Tabelul de prețuri este următorul:

Preț:

Schimbarea PostgreSQL Vizualizări

Următoarea interogare ne va ajuta să actualizăm vizualizarea 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;

Să interogăm acum vizualizarea pentru a-i vedea conținutul:

Schimbarea PostgreSQL Vizualizări

Vederea a fost schimbată, iar acum avem două coloane din două tabele diferite. Acest lucru a fost realizat folosind o instrucțiune JOIN.

Ștergerea PostgreSQL Vizualizări

Oricând trebuie să ștergeți un PostgreSQL vizualizare, puteți utiliza instrucțiunea DROP VIEW. Iată sintaxa instrucțiunii:

DROP VIEW [IF EXISTS] view-name;

Parametrul view-name este numele vizualizării care urmează să fie ștearsă.

În această sintaxă, IF EXISTS este opțional. Dacă nu îl specificați și încercați să ștergeți o vizualizare care nu există, veți primi o eroare.

De exemplu, pentru a renunța la vizualizarea numită Price_View2, putem rula următoarea instrucțiune:

DROP VIEW Price_View2;

Vizualizarea va fi ștearsă.

Folosind pgAdmin

Acum să vedem cum pot fi efectuate aceste acțiuni folosind pgAdmin.

Crearea PostgreSQL Vizualizări

Pentru a realiza același lucru prin pgAdmin, procedați astfel:

Pas 1) Conectați-vă la contul dvs. pgAdmin.

Pas 2)

  • Din bara de navigare din stânga, faceți clic pe Baze de date.
  • Faceți clic pe Demo.

Crearea PostgreSQL Vizualizări folosind pgAdmin

Pas 3) Introduceți interogarea în editorul de interogări:

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

Pas 4) Faceți clic pe butonul Execute.

Crearea PostgreSQL Vizualizări folosind pgAdmin

Pas 5) Pentru a vizualiza conținutul vizualizării, procedați astfel:

  • Tastați următoarea comandă în editorul de interogări:
SELECT *
FROM Price_View;
  • Faceți clic pe butonul Execute.

Crearea PostgreSQL Vizualizări folosind pgAdmin

Aceasta va returna următoarele:

Crearea PostgreSQL Vizualizări folosind pgAdmin

Pentru a crea vizualizarea Price_View2, procedați în felul următor:

Pas 1) Tastați următoarea interogare în editorul de interogări:

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

Pas 2) Faceți clic pe butonul Execute.

Crearea PostgreSQL Vizualizări folosind pgAdmin

Pas 3) Pentru a vedea conținutul vizualizării, procedați în felul următor:

  • Tastați următoarea interogare în editorul de interogări:
SELECT *
FROM Price_View2;
  • Faceți clic pe butonul Execute.

Crearea PostgreSQL Vizualizări folosind pgAdmin

Aceasta va returna următoarele:

Crearea PostgreSQL Vizualizări folosind pgAdmin

Schimbarea PostgreSQL Vizualizări

Pentru a realiza același lucru prin pgAdmin, procedați astfel:

Pas 1) Conectați-vă la contul dvs. pgAdmin.

Pas 2)

  • Din bara de navigare din stânga, faceți clic pe Baze de date.
  • Faceți clic pe Demo.

Schimbarea PostgreSQL Vizualizări folosind pgAdmin

Pas 3) Introduceți interogarea în editorul de interogări:

CREATE or REPLACE VIEW Price_View2 AS
  SELECT price, name
  FROM Book
  INNER JOIN Price
  ON Book.id = Price.id
  WHERE price > 200;

Pas 4) Faceți clic pe butonul Execute.

Schimbarea PostgreSQL Vizualizări folosind pgAdmin

Pas 5) Tastați următoarea interogare în editorul de interogări:

SELECT *
FROM Price_View2;

Aceasta va returna următoarele:

Schimbarea PostgreSQL Vizualizări folosind pgAdmin

Ștergerea PostgreSQL Vizualizări

Pentru a realiza același lucru prin pgAdmin, procedați astfel:

Pas 1) Conectați-vă la contul dvs. pgAdmin.

Pas 2)

  • Din bara de navigare din stânga, faceți clic pe Baze de date.
  • Faceți clic pe Demo.

Ștergerea PostgreSQL Vizualizări folosind pgAdmin

Pas 3) Introduceți interogarea în editorul de interogări:

DROP VIEW Price_View2;

Pas 4) Faceți clic pe butonul Execute.

Ștergerea PostgreSQL Vizualizări folosind pgAdmin

Vizualizarea va fi ștearsă.

Descărcați baza de date folosită în acest tutorial

Întrebări frecvente

Un tabel stochează fizic datele pe disc. O vizualizare stochează doar o interogare SELECT, așadar interogarea acesteia reexecută acea interogare și returnează datele curente din tabelele de bază.

O vizualizare materializată stochează în cache rezultatul unei interogări pe disc. Se citește mai rapid decât o vizualizare simplă, dar necesită REFRESH MATERIALIZED VIEW pentru a afișa date noi.

O vizualizare standard își execută interogarea de fiecare dată, afișând date în timp real. O vizualizare materializată stochează rezultatele pe disc pentru viteză, dar poate rămâne neactualizată până la reîmprospătare.

Uneori. O vizualizare simplă a unui singur tabel fără agregare este actualizabilă automat, așadar INSERT, UPDATE și DELETE funcționează direct. Vizualizările complexe au nevoie ÎN LOC DE declanșatoare.

Interogați catalogul: SELECT table_name FROM information_schema.views WHERE table_schema = 'public'. În pgAdmin, puteți extinde nodul Views sub o schemă.

Asistenții inteligenți artificiali transformă o cerere în limbaj simplu într-o instrucțiune CREATE VIEW, denumesc vizualizarea și adaugă clauzele WHERE și JOIN corecte, accelerând interogările pe care le reutilizați des.

Da. Lipiți o comandă SELECT lungă, iar un asistent AI o va încadra în CREATE OR REPLACE VIEW, sugerează un nume și semnalează coloanele care necesită aliasuri pentru a evita numele duplicate.

O vizualizare normală nu accelerează interogările deoarece comanda SELECT se execută de fiecare dată. Pentru citiri repetate mai rapide, utilizați o vizualizare materializată, care stochează rezultatele pe disc până la reîmprospătare.

Rezumați această postare cu: