萬盛學電腦網

您现在的位置: 萬盛學電腦網 >> 程式設計 >  >> 資料庫 >> MySQL 教學

SQL 教學:CREATE VIEW 建立與管理檢視表

檢視表是虛擬表,基於 SELECT 查詢結果動態產生,可簡化複雜查詢、隱藏敏感欄位、提供安全存取層。

建立檢視表語法

CREATE VIEW view_name AS
SELECT column1, column2
FROM table_name
WHERE condition;

經典範例:Northwind 資料庫

1. 目前產品清單 (排除停產)

CREATE VIEW [Current Product List] AS
SELECT ProductID, ProductName
FROM Products
WHERE Discontinued = 'No';

查詢:SELECT * FROM [Current Product List];

2. 單價高於平均的產品

CREATE VIEW [Products Above Average Price] AS
SELECT ProductName, UnitPrice
FROM Products
WHERE UnitPrice > (SELECT AVG(UnitPrice) FROM Products);

檢視表特性

  • 不儲存實體資料,查詢時即時執行底層 SQL。
  • 可包含 JOIN、彙總函式、子查詢。
  • 部分資料庫支援可更新檢視表 (需符合特定條件)。
  • 簡化權限管理:授權檢視表而非基礎表。

刪除檢視表

DROP VIEW view_name;

進階:WITH CHECK OPTION

CREATE VIEW HighPriceProducts AS
SELECT * FROM Products WHERE UnitPrice > 100
WITH CHECK OPTION;

確保透過此檢視表 INSERT/UPDATE 的資料符合 WHERE 條件。

copyright © 萬盛學電腦網 all rights reserved