PostgreSQL Tạo chế độ xem với ví dụ
Là gì PostgreSQL Lượt xem?
In PostgreSQL, một khung nhìn là một bảng giả. Điều này có nghĩa là một khung nhìn không phải là một bảng thực. Tuy nhiên, chúng ta có thể CHỌN nó như một bảng thông thường. Một khung nhìn có thể có tất cả hoặc một số cột trong bảng. Một khung nhìn cũng có thể là sự thể hiện của nhiều bảng.
Các bảng được gọi là bảng cơ sở. Khi tạo chế độ xem, bạn chỉ cần tạo truy vấn rồi đặt tên, biến nó thành công cụ hữu ích để gói các truy vấn phức tạp và thường dùng.
Tạo PostgreSQL Lượt xem
Để tạo ra một PostgreSQL view, chúng ta sử dụng câu lệnh CREATE VIEW. Đây là cú pháp cho câu lệnh này:
CREATE [OR REPLACE] VIEW view-name AS SELECT column(s) FROM table(s) [WHERE condition(s)];
Tham số OR REPLACE sẽ thay thế chế độ xem nếu nó đã tồn tại. Nếu bị bỏ qua và chế độ xem đã tồn tại thì lỗi sẽ được trả về.
Tham số view-name là tên của view mà bạn cần tạo.
(Các) điều kiện WHERE là các tùy chọn và chúng phải được thỏa mãn để bất kỳ bản ghi nào được thêm vào dạng xem.
Hãy xem xét bảng Giá được đưa ra dưới đây:
Giá:
Chúng ta hãy tạo một khung nhìn từ bảng trên:
CREATE VIEW Price_View AS SELECT id, price FROM Price WHERE price > 200;
Lệnh trên sẽ tạo một khung nhìn dựa trên Câu lệnh SELECT. Chỉ những bản ghi có giá lớn hơn 200 mới được thêm vào chế độ xem. Chế độ xem đã được đặt tên là Price_View. Chúng ta hãy truy vấn nó để xem nội dung của nó:
SELECT * FROM Price_View;
Điều này trả về như sau:
Mặc dù bảng cơ sở có 4 bản ghi nhưng chỉ có 2 bản ghi được thêm vào dạng xem.
Ở đây, chúng ta chỉ có thể thêm một cột vào dạng xem. Chúng ta hãy tạo một khung nhìn chỉ bao gồm một cột của bảng Giá:
CREATE VIEW Price_View2 AS SELECT price FROM Price WHERE price > 200;
Chế độ xem đã được đặt tên Price_View2 và chỉ bao gồm cột giá của bảng Giá. Chúng ta hãy truy vấn khung nhìn để xem nội dung của nó:
SELECT * FROM Price_View2;
Điều này trả về như sau:
Thay đổi PostgreSQL Lượt xem
Định nghĩa của một khung nhìn có thể được thay đổi mà không cần phải loại bỏ nó. Điều này được thực hiện bằng cách sử dụng câu lệnh CREATE OR REPLACE VIEW.
Hãy để chúng tôi chứng minh điều này bằng cách cập nhật chế độ xem có tên Price_View2.
Giá_Xem2:
Bảng Sách như sau:
Sách:
Bảng giá như sau:
Giá:
Truy vấn sau đây sẽ giúp chúng ta cập nhật chế độ xem 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;
Bây giờ chúng ta truy vấn view để xem nội dung của nó:
Chế độ xem đã được thay đổi và bây giờ chúng tôi có hai cột từ hai bảng khác nhau. Điều này đã đạt được bằng cách sử dụng câu lệnh JOIN.
xóa PostgreSQL Lượt xem
Bất cứ lúc nào bạn cần xóa một PostgreSQL xem. Bạn có thể sử dụng câu lệnh DROP VIEW. Đây là cú pháp cho câu lệnh:
DROP VIEW [IF EXISTS] view-name;
Tham số view-name là tên của view sẽ bị xóa.
Trong cú pháp này, IF EXISTS là tùy chọn. Nó chỉ được yêu cầu. Nếu bạn không chỉ định nó và cố gắng xóa một chế độ xem không tồn tại, bạn sẽ gặp lỗi.
Ví dụ, để xóa chế độ xem có tên Price_View2, chúng ta có thể chạy câu lệnh sau:
DROP VIEW Price_View2;
Chế độ xem sẽ bị xóa.
Sử dụng pgAdmin
Bây giờ hãy xem cách thực hiện những hành động này bằng pgAdmin.
Tạo PostgreSQL Lượt xem
Để thực hiện điều tương tự thông qua pgAdmin, hãy làm điều này:
Bước 1) Đăng nhập vào tài khoản pgAdmin của bạn.
Bước 2)
- Từ thanh điều hướng ở bên trái-Nhấp vào Cơ sở dữ liệu.
- Nhấp vào Bản trình diễn.
Bước 3) Nhập truy vấn vào trình soạn thảo truy vấn:
CREATE VIEW Price_View AS SELECT id, price FROM Price WHERE price > 200;
Bước 4) Nhấp vào nút Thực hiện.
Bước 5) Để xem nội dung của chế độ xem, hãy thực hiện như sau:
- Nhập lệnh sau vào trình soạn thảo truy vấn:
- Nhấp vào nút Thực hiện.
SELECT * FROM Price_View;
Kết quả trả về sẽ như sau:
Để tạo chế độ xem Price_View2, hãy thực hiện như sau:
Bước 1) Nhập truy vấn sau vào trình soạn thảo truy vấn:
CREATE VIEW Price_View2 AS SELECT price FROM Price WHERE price > 200;
Bước 2) Nhấp vào nút Thực thi.
Bước 3) Để xem nội dung của chế độ xem, hãy làm như sau:
- Nhập truy vấn sau vào trình soạn thảo truy vấn:
- Nhấp vào nút Thực hiện.
SELECT * FROM Price_View2;
Kết quả trả về sẽ như sau:
Thay đổi PostgreSQL Lượt xem
Để thực hiện điều tương tự thông qua pgAdmin, hãy làm điều này:
Bước 1) Đăng nhập vào tài khoản pgAdmin của bạn.
Bước 2)
- Từ thanh điều hướng ở bên trái-Nhấp vào Cơ sở dữ liệu.
- Nhấp vào Bản trình diễn.
Bước 3) Nhập truy vấn vào trình soạn thảo truy vấn:
CREATE or REPLACE VIEW Price_View2 AS SELECT price, name FROM Book INNER JOIN Price ON Book.id = Price.id WHERE price > 200;
Bước 4) Nhấp vào nút Thực hiện.
Bước 5) Nhập truy vấn sau vào trình soạn thảo truy vấn:
SELECT * FROM Price_View2;
Kết quả trả về sẽ như sau:
xóa PostgreSQL Lượt xem
Để thực hiện điều tương tự thông qua pgAdmin, hãy làm điều này:
Bước 1) Đăng nhập vào tài khoản pgAdmin của bạn.
Bước 2)
- Từ thanh điều hướng ở bên trái-Nhấp vào Cơ sở dữ liệu.
- Nhấp vào Bản trình diễn.
Bước 3) Nhập truy vấn vào trình soạn thảo truy vấn:
DROP VIEW Price_View2;
Bước 4) Nhấp vào nút Thực hiện.
Chế độ xem sẽ bị xóa.
Tổng kết
- A PostgreSQL view là một bảng giả, nghĩa là nó không phải là một bảng thực.
- Một khung nhìn có thể được tạo từ một hoặc nhiều bảng.
- Các bảng mà từ đó một khung nhìn được tạo ra được gọi là các bảng cơ sở.
- Để tạo chế độ xem, chúng tôi sử dụng câu lệnh CREATE OR REPLACE VIEW.
- Để thay đổi định nghĩa của một khung nhìn, chúng ta sử dụng câu lệnh CREATE OR REPLACE VIEW.
- Để xóa một khung nhìn, chúng ta sử dụng câu lệnh DROP VIEW.
Tải xuống Cơ sở dữ liệu được sử dụng trong Hướng dẫn này