PostgreSQL Opprett visning med eksempel
Hva er PostgreSQL Utsikt?
In PostgreSQL, en visning er en pseudo-tabell. Dette betyr at en visning ikke er en ekte tabell. Vi kan imidlertid VELGE den som en vanlig tabell. En visning kan ha alle eller noen av tabellkolonnene. En visning kan også være en representasjon av mer enn én tabell.
Tabellene omtales som basistabeller. Når du oppretter en visning, trenger du bare å lage en spørring og deretter gi den et navn, noe som gjør den til et nyttig verktøy for å pakke sammen komplekse og ofte brukte spørringer.
Opprette PostgreSQL Visninger
Å opprette en PostgreSQL view, bruker vi CREATE VIEW-setningen. Her er syntaksen for denne uttalelsen:
CREATE [OR REPLACE] VIEW view-name AS SELECT column(s) FROM table(s) [WHERE condition(s)];
OR REPLACE-parameteren vil erstatte visningen hvis den allerede eksisterer. Hvis den utelates og visningen allerede eksisterer, vil en feil bli returnert.
View-name-parameteren er navnet på visningen du må opprette.
WHERE-betingelsene er alternativer, og de må være oppfylt for at en post skal legges til visningen.
Vurder pristabellen nedenfor:
Pris:
La oss lage en visning fra tabellen ovenfor:
CREATE VIEW Price_View AS SELECT id, price FROM Price WHERE price > 200;
Kommandoen ovenfor vil opprette en visning basert på SELECT-setning. Kun postene der prisen er høyere enn 200 vil bli lagt til visningen. Utsikten har fått navnet Price_View. La oss spørre den for å se innholdet:
SELECT * FROM Price_View;
Dette returnerer følgende:
Selv om basistabellen har 4 poster, ble bare 2 lagt til i visningen.
Her kan vi bare legge til én kolonne i visningen. La oss lage en visning som bare inkluderer én kolonne i pristabellen:
CREATE VIEW Price_View2 AS SELECT price FROM Price WHERE price > 200;
Visningen har fått navnet Price_View2 og inkluderer kun priskolonnen i Pristabellen. La oss spørre visningen for å se innholdet:
SELECT * FROM Price_View2;
Dette returnerer følgende:
Endre PostgreSQL Visninger
Definisjonen av en visning kan endres uten å måtte droppe den. Dette gjøres ved å bruke CREATE OR REPLACE VIEW-setningen.
La oss demonstrere dette ved å oppdatere visningen som heter Price_View2.
Pris_visning2:
Boktabellen er som følger:
Bok:
Pristabellen er som følger:
Pris:
Følgende spørring vil hjelpe oss med å oppdatere visningen 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;
La oss nå spørre visningen for å se innholdet:
Visningen er endret, og nå har vi to kolonner fra to forskjellige tabeller. Dette er oppnådd ved hjelp av en JOIN-erklæring.
slette PostgreSQL Visninger
Når som helst du trenger å slette en PostgreSQL utsikt. Du kan bruke DROP VIEW-setningen. Her er syntaksen for setningen:
DROP VIEW [IF EXISTS] view-name;
Parameteren visningsnavn er navnet på visningen som skal slettes.
I denne syntaksen er IF EXISTS valgfritt. Det er bare nødvendig. Hvis du ikke spesifiserer det og prøver å slette en visning som ikke eksisterer, får du en feilmelding.
For å droppe visningen som heter Price_View2, kan vi for eksempel kjøre følgende setning:
DROP VIEW Price_View2;
Visningen vil bli slettet.
Bruker pgAdmin
La oss nå se hvordan disse handlingene kan utføres ved hjelp av pgAdmin.
Opprette PostgreSQL Visninger
For å oppnå det samme gjennom pgAdmin, gjør dette:
Trinn 1) Logg på pgAdmin-kontoen din.
Trinn 2)
- Fra navigasjonslinjen til venstre klikker du på Databaser.
- Klikk på Demo.
Trinn 3) Skriv inn søket i spørringsredigeringsprogrammet:
CREATE VIEW Price_View AS SELECT id, price FROM Price WHERE price > 200;
Trinn 4) Klikk på Utfør-knappen.
Trinn 5) Gjør følgende for å se innholdet i visningen:
- Skriv inn følgende kommando i spørringsredigeringsprogrammet:
- Klikk på Utfør-knappen.
SELECT * FROM Price_View;
Dette vil returnere følgende:
For å opprette visningen Price_View2, gjør følgende:
Trinn 1) Skriv inn følgende spørring i spørringsredigeringsprogrammet:
CREATE VIEW Price_View2 AS SELECT price FROM Price WHERE price > 200;
Trinn 2) Klikk på Utfør-knappen.
Trinn 3) Gjør følgende for å se innholdet i visningen:
- Skriv inn følgende spørring i spørringsredigeringsprogrammet:
- Klikk på Utfør-knappen.
SELECT * FROM Price_View2;
Dette vil returnere følgende:
Endre PostgreSQL Visninger
For å oppnå det samme gjennom pgAdmin, gjør dette:
Trinn 1) Logg på pgAdmin-kontoen din.
Trinn 2)
- Fra navigasjonslinjen til venstre klikker du på Databaser.
- Klikk på Demo.
Trinn 3) Skriv inn søket i spørringsredigeringsprogrammet:
CREATE or REPLACE VIEW Price_View2 AS SELECT price, name FROM Book INNER JOIN Price ON Book.id = Price.id WHERE price > 200;
Trinn 4) Klikk på Utfør-knappen.
Trinn 5) Skriv inn følgende spørring i spørringsredigeringsprogrammet:
SELECT * FROM Price_View2;
Dette vil returnere følgende:
slette PostgreSQL Visninger
For å oppnå det samme gjennom pgAdmin, gjør dette:
Trinn 1) Logg på pgAdmin-kontoen din.
Trinn 2)
- Fra navigasjonslinjen til venstre klikker du på Databaser.
- Klikk på Demo.
Trinn 3) Skriv inn søket i spørringsredigeringsprogrammet:
DROP VIEW Price_View2;
Trinn 4) Klikk på Utfør-knappen.
Visningen vil bli slettet.
Oppsummering
- A PostgreSQL view er en pseudo-tabell, noe som betyr at det ikke er en ekte tabell.
- En visning kan opprettes fra en eller flere tabeller.
- Tabellene som en visning opprettes fra er kjent som basistabeller.
- For å lage en visning bruker vi CREATE OR REPLACE VIEW-setningen.
- For å endre definisjonen av en visning bruker vi CREATE OR REPLACE VIEW-setningen.
- For å slette en visning bruker vi DROP VIEW-setningen.
Last ned databasen som brukes i denne opplæringen