PostgreSQL Utwórz widok z przykładem
Co to jest PostgreSQL Pogląd?
In PostgreSQL, widok jest pseudo-tabelą. Oznacza to, że widok nie jest prawdziwą tabelą. Możemy jednak WYBRAĆ go jako zwykły stół. Widok może zawierać wszystkie lub niektóre kolumny tabeli. Widok może być także reprezentacją więcej niż jednej tabeli.
Tabele są nazywane tabelami bazowymi. Podczas tworzenia widoku wystarczy utworzyć zapytanie, a następnie nadać mu nazwę, co czyni je użytecznym narzędziem do pakowania złożonych i powszechnie używanych zapytań.
Tworzenie PostgreSQL odwiedzajacy
Aby utworzyć PostgreSQL widoku, używamy instrukcji CREATE VIEW. Oto składnia tego stwierdzenia:
CREATE [OR REPLACE] VIEW view-name AS SELECT column(s) FROM table(s) [WHERE condition(s)];
Parametr OR REPLACE zastąpi widok, jeśli już istnieje. Jeśli zostanie pominięty, a widok już istnieje, zostanie zwrócony błąd.
Parametr view-name to nazwa widoku, który chcesz utworzyć.
Warunki WHERE są opcjami i muszą zostać spełnione, aby jakikolwiek rekord mógł zostać dodany do widoku.
Rozważ tabelę cen podaną poniżej:
Cena:
Utwórzmy widok z powyższej tabeli:
CREATE VIEW Price_View AS SELECT id, price FROM Price WHERE price > 200;
Powyższe polecenie utworzy widok w oparciu o SELECT oświadczenie. Do widoku dodane zostaną tylko rekordy, których cena jest większa niż 200. Widokowi nadano nazwę Price_View. Zapytajmy go, aby zobaczyć jego zawartość:
SELECT * FROM Price_View;
To zwraca następujące informacje:
Mimo że tabela podstawowa zawiera 4 rekordy, do widoku dodano tylko 2.
Tutaj możemy dodać tylko jedną kolumnę do widoku. Utwórzmy widok zawierający tylko jedną kolumnę tabeli Cen:
CREATE VIEW Price_View2 AS SELECT price FROM Price WHERE price > 200;
Widok otrzymał nazwę Price_View2 i zawiera wyłącznie kolumnę cenową tabeli Cen. Zapytajmy widok, aby zobaczyć jego zawartość:
SELECT * FROM Price_View2;
To zwraca następujące informacje:
Wymiana pieniędzy PostgreSQL odwiedzajacy
Definicję widoku można zmienić bez konieczności jego usuwania. Odbywa się to za pomocą instrukcji CREATE OR REPLACE VIEW.
Zademonstrujmy to, aktualizując widok o nazwie Price_View2.
Cena_widok2:
Tabela książek wygląda następująco:
Książka:
Tabela cen wygląda następująco:
Cena:
Poniższe zapytanie pomoże nam zaktualizować widok 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;
Zapytajmy teraz widok, aby zobaczyć jego zawartość:
Widok został zmieniony i teraz mamy dwie kolumny z dwóch różnych tabel. Osiągnięto to za pomocą instrukcji JOIN.
Usuwanie PostgreSQL odwiedzajacy
Za każdym razem, gdy chcesz usunąć plik a PostgreSQL pogląd. Możesz użyć instrukcji DROP VIEW. Oto składnia instrukcji:
DROP VIEW [IF EXISTS] view-name;
Parametr nazwa-widoku jest nazwą widoku, który ma zostać usunięty.
W tej składni JEŚLI ISTNIEJE jest opcjonalne. Jest to jedynie wymagane. Jeśli go nie określisz i spróbujesz usunąć widok, który nie istnieje, pojawi się błąd.
Na przykład, aby usunąć widok o nazwie Price_View2, możemy uruchomić następujące polecenie:
DROP VIEW Price_View2;
Widok zostanie usunięty.
Korzystanie z pgAdmina
Zobaczmy teraz, jak można wykonać te akcje za pomocą pgAdmin.
Tworzenie PostgreSQL odwiedzajacy
Aby osiągnąć to samo poprzez pgAdmin, wykonaj następujące czynności:
Krok 1) Zaloguj się na swoje konto pgAdmin.
Krok 2)
- Na pasku nawigacyjnym po lewej stronie kliknij opcję Bazy danych.
- Kliknij opcję Demo.
Krok 3) Wpisz zapytanie w edytorze zapytań:
CREATE VIEW Price_View AS SELECT id, price FROM Price WHERE price > 200;
Krok 4) Kliknij przycisk Wykonaj.
Krok 5) Aby wyświetlić zawartość widoku, wykonaj następujące czynności:
- Wpisz następujące polecenie w edytorze zapytań:
- Kliknij przycisk Wykonaj.
SELECT * FROM Price_View;
Spowoduje to zwrócenie następujących informacji:
Aby utworzyć widok Price_View2, wykonaj następujące czynności:
Krok 1) Wpisz następujące zapytanie w edytorze zapytań:
CREATE VIEW Price_View2 AS SELECT price FROM Price WHERE price > 200;
Krok 2) Kliknij przycisk Wykonaj.
Krok 3) Aby zobaczyć zawartość widoku, wykonaj następujące czynności:
- Wpisz następujące zapytanie w edytorze zapytań:
- Kliknij przycisk Wykonaj.
SELECT * FROM Price_View2;
Spowoduje to zwrócenie następujących informacji:
Wymiana pieniędzy PostgreSQL odwiedzajacy
Aby osiągnąć to samo poprzez pgAdmin, wykonaj następujące czynności:
Krok 1) Zaloguj się na swoje konto pgAdmin.
Krok 2)
- Na pasku nawigacyjnym po lewej stronie kliknij opcję Bazy danych.
- Kliknij opcję Demo.
Krok 3) Wpisz zapytanie w edytorze zapytań:
CREATE or REPLACE VIEW Price_View2 AS SELECT price, name FROM Book INNER JOIN Price ON Book.id = Price.id WHERE price > 200;
Krok 4) Kliknij przycisk Wykonaj.
Krok 5) Wpisz następujące zapytanie w edytorze zapytań:
SELECT * FROM Price_View2;
Spowoduje to zwrócenie następujących informacji:
Usuwanie PostgreSQL odwiedzajacy
Aby osiągnąć to samo poprzez pgAdmin, wykonaj następujące czynności:
Krok 1) Zaloguj się na swoje konto pgAdmin.
Krok 2)
- Na pasku nawigacyjnym po lewej stronie kliknij opcję Bazy danych.
- Kliknij opcję Demo.
Krok 3) Wpisz zapytanie w edytorze zapytań:
DROP VIEW Price_View2;
Krok 4) Kliknij przycisk Wykonaj.
Widok zostanie usunięty.
Podsumowanie
- A PostgreSQL view jest pseudo-tabelą, co oznacza, że nie jest prawdziwą tabelą.
- Widok można utworzyć z jednej lub większej liczby tabel.
- Tabele, z których tworzony jest widok, nazywane są tabelami podstawowymi.
- Aby utworzyć widok, używamy instrukcji CREATE OR REPLACE VIEW.
- Aby zmienić definicję widoku, używamy instrukcji CREATE OR REPLACE VIEW.
- Aby usunąć widok, używamy instrukcji DROP VIEW.
Pobierz bazę danych używaną w tym samouczku