PostgreSQL Skapa vy med exempel
โก Smart sammanfattning
PostgreSQL Vyer รคr pseudotabeller som byggs frรฅn en lagrad SELECT-frรฅga, vilket lรฅter dig radbryta komplexa eller ofta anvรคnda frรฅgor bakom ett enda namn som du kan lรคsa, uppdatera eller ta bort som en vanlig tabell.

Vad รคr PostgreSQL Se?
In PostgreSQL, en vy รคr en pseudotabell. Det betyder att en vy inte รคr ett riktigt bord. Men vi kan VรLJA den som en vanlig tabell. En vy kan ha alla eller nรฅgra av tabellkolumnerna. En vy kan ocksรฅ vara en representation av mer รคn en tabell.
Tabellerna kallas bastabeller. Nรคr du skapar en vy behรถver du bara skapa en frรฅga och sedan ge den ett namn, vilket gรถr den till ett anvรคndbart verktyg fรถr radbrytning.ping komplexa och vanligt fรถrekommande frรฅgor.
Skapa PostgreSQL Visningar
Fรถr att skapa en PostgreSQL view anvรคnder vi CREATE VIEW-satsen. Hรคr รคr syntaxen fรถr detta uttalande:
CREATE [OR REPLACE] VIEW view-name AS SELECT column(s) FROM table(s) [WHERE condition(s)];
Parametern OR REPLACE kommer att ersรคtta vyn om den redan finns. Om den utelรคmnas och vyn redan finns kommer ett fel att returneras.
Parametern view-name รคr namnet pรฅ vyn som du behรถver skapa.
WHERE-villkoren รคr valfria och mรฅste vara uppfyllda fรถr att en post ska kunna lรคggas till i vyn.
Tรคnk pรฅ pristabellen nedan:
Pris:
Lรฅt oss skapa en vy frรฅn tabellen ovan:
CREATE VIEW Price_View AS SELECT id, price FROM Price WHERE price > 200;
Kommandot ovan kommer att skapa en vy baserad pรฅ SELECT-sats. Endast de poster dรคr priset รคr hรถgre รคn 200 kommer att lรคggas till i vyn. Vyn har fรฅtt namnet Price_View. Lรฅt oss frรฅga den fรถr att se dess innehรฅll:
SELECT * FROM Price_View;
Detta returnerar fรถljande:
รven om bastabellen har 4 poster lades endast 2 till i vyn.
Hรคr kan vi bara lรคgga till en kolumn i vyn. Lรฅt oss skapa en vy som bara innehรฅller en kolumn frรฅn pristabellen:
CREATE VIEW Price_View2 AS SELECT price FROM Price WHERE price > 200;
Vyn har fรฅtt namnet Price_View2 och inkluderar endast priskolumnen i pristabellen. Lรฅt oss frรฅga vyn fรถr att se dess innehรฅll:
SELECT * FROM Price_View2;
Detta returnerar fรถljande:
Skiftande PostgreSQL Visningar
Definitionen av en vy kan รคndras utan att behรถva slรคppa den. Detta gรถrs med hjรคlp av CREATE OR REPLACE VIEW-satsen.
Lรฅt oss visa detta genom att uppdatera vyn som heter Price_View2.
Price_View2:
Boktabellen รคr som fรถljer:
Bok:
Pristabellen รคr som fรถljer:
Pris:
Fรถljande frรฅga hjรคlper oss att uppdatera vyn 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;
Lรฅt oss nu frรฅga vyn fรถr att se dess innehรฅll:
Vyn har รคndrats, och nu har vi tvรฅ kolumner frรฅn tvรฅ olika tabeller. Detta har uppnรฅtts med hjรคlp av en JOIN-sats.
Radera PostgreSQL Visningar
Nรคr du behรถver ta bort en PostgreSQL I en vy kan du anvรคnda DROP VIEW-satsen. Hรคr รคr syntaxen fรถr satsen:
DROP VIEW [IF EXISTS] view-name;
Parametern view-name รคr namnet pรฅ vyn som ska raderas.
I den hรคr syntaxen รคr IF EXISTS valfritt. Om du inte anger det och fรถrsรถker ta bort en vy som inte finns fรฅr du ett felmeddelande.
Fรถr att till exempel ta bort vyn med namnet Price_View2 kan vi kรถra fรถljande uttalande:
DROP VIEW Price_View2;
Vyn kommer att raderas.
Anvรคnder pgAdmin
Lรฅt oss nu se hur dessa รฅtgรคrder kan utfรถras med pgAdmin.
Skapa PostgreSQL Visningar
Fรถr att รฅstadkomma samma sak genom pgAdmin, gรถr sรฅ hรคr:
Steg 1) Logga in pรฅ ditt pgAdmin-konto.
Steg 2)
- Klicka pรฅ Databaser i navigeringsfรคltet till vรคnster.
- Klicka pรฅ Demo.
Steg 3) Skriv in frรฅgan i frรฅgeredigeraren:
CREATE VIEW Price_View AS SELECT id, price FROM Price WHERE price > 200;
Steg 4) Klicka pรฅ knappen Kรถr.
Steg 5) Fรถr att visa innehรฅllet i vyn, gรถr fรถljande:
- Skriv fรถljande kommando i frรฅgeredigeraren:
SELECT * FROM Price_View;
- Klicka pรฅ knappen Kรถr.
Detta kommer att returnera fรถljande:
Gรถr fรถljande fรถr att skapa vyn Price_View2:
Steg 1) Skriv in fรถljande frรฅga i frรฅgeredigeraren:
CREATE VIEW Price_View2 AS SELECT price FROM Price WHERE price > 200;
Steg 2) Klicka pรฅ knappen Kรถr.
Steg 3) Gรถr fรถljande fรถr att se innehรฅllet i vyn:
- Skriv in fรถljande frรฅga i frรฅgeredigeraren:
SELECT * FROM Price_View2;
- Klicka pรฅ knappen Kรถr.
Detta kommer att returnera fรถljande:
Skiftande PostgreSQL Visningar
Fรถr att รฅstadkomma samma sak genom pgAdmin, gรถr sรฅ hรคr:
Steg 1) Logga in pรฅ ditt pgAdmin-konto.
Steg 2)
- Klicka pรฅ Databaser i navigeringsfรคltet till vรคnster.
- Klicka pรฅ Demo.
Steg 3) Skriv in frรฅgan i frรฅgeredigeraren:
CREATE or REPLACE VIEW Price_View2 AS SELECT price, name FROM Book INNER JOIN Price ON Book.id = Price.id WHERE price > 200;
Steg 4) Klicka pรฅ knappen Kรถr.
Steg 5) Skriv in fรถljande frรฅga i frรฅgeredigeraren:
SELECT * FROM Price_View2;
Detta kommer att returnera fรถljande:
Radera PostgreSQL Visningar
Fรถr att รฅstadkomma samma sak genom pgAdmin, gรถr sรฅ hรคr:
Steg 1) Logga in pรฅ ditt pgAdmin-konto.
Steg 2)
- Klicka pรฅ Databaser i navigeringsfรคltet till vรคnster.
- Klicka pรฅ Demo.
Steg 3) Skriv in frรฅgan i frรฅgeredigeraren:
DROP VIEW Price_View2;
Steg 4) Klicka pรฅ knappen Kรถr.
Vyn kommer att raderas.
Ladda ner den databas som anvรคnds i denna handledning



















