/

SQL 視圖

SQL 視圖

如何在 SQL 資料庫中創建視圖並與其互動

在 SQL 中,一個有趣的功能是可以創建視圖

視圖就像一個表格,但不同於實際的表格,它是根據 SELECT 查詢的結果動態構建的。

讓我們使用在連接語句課程中使用過的示例:

1
2
3
4
5
6
7
8
9
10
CREATE TABLE people (
age INT NOT NULL,
name CHAR(20) NOT NULL PRIMARY KEY
);

CREATE TABLE cars (
brand CHAR(20) NOT NULL,
model CHAR(20) NOT NULL,
owner CHAR(20) NOT NULL PRIMARY KEY
);

我們添加一些數據:

1
2
3
4
INSERT INTO people VALUES (37, 'Flavio');
INSERT INTO people VALUES (8, 'Roger');
INSERT INTO cars VALUES ('Ford', 'Fiesta', 'Flavio');
INSERT INTO cars VALUES ('Ford', 'Mustang', 'Roger');

我們可以創建一個稱為 car_age 的視圖,該視圖始終包含車型與車主年齡之間的關聯:

1
CREATE VIEW car_age AS SELECT model, age AS owner_age FROM people JOIN cars ON people.name = cars.owner;

以下是我們可以使用 SELECT * FROM car_age 檢查的結果:

1
2
3
4
 model | owner_age 
----------------------+-----------
Fiesta | 37
Mustang | 8

視圖是持久的,在您的資料庫中看起來就像一個表格。您可以使用 DROP VIEW 刪除一個視圖:

1
DROP VIEW car_age

tags: [“SQL”, “database”, “views”]