CREATE VIEW employee_basic_info AS
SELECT employee_id, first_name, last_name, department_id
FROM employees
WHERE status = 'active';
employee_basic_info視圖。psql命令連接PostgreSQL:psql -h localhost -U postgres -d your_database
替換localhost(主機名)、postgres(用戶名)、your_database(數據庫名)為實際值。psql提示符下輸入視圖定義SQL,按回車執行:CREATE VIEW product_high_value AS
SELECT product_id, product_name, price
FROM products
WHERE price > 1000;
\dv命令查看所有視圖,確認product_high_value在列表中。psql中執行\dv,顯示所有視圖的名稱、所屬架構、類型等信息。\d+ view_name(如\d+ employee_basic_info),查看視圖的詳細定義(包括SQL語句、字段注釋等)。視圖本質上是虛擬表,查詢視圖的方式與查詢普通表一致:
SELECT語句(如SELECT * FROM employee_basic_info WHERE department_id = 10),執行后查看結果。psql中直接輸入SELECT語句,例如:SELECT * FROM product_high_value ORDER BY price DESC;
執行后顯示視圖中的數據,支持WHERE、ORDER BY、JOIN等SQL操作。CREATE權限,查詢視圖需具備視圖的SELECT權限。UPDATE、INSERT、DELETE語句修改視圖數據(需滿足視圖定義的可更新條件)。JOIN、GROUP BY、子查詢)可能影響查詢性能,建議對基表建立索引或簡化視圖定義。