在 SQL 中,视图包含与表相似的行和列,但视图不存储实际数据。
你可以将视图视为一个虚拟表环境,它由一个或多个表创建,以便更轻松地处理数据。

在 SQL 中创建视图
我们可以使用 CREATE VIEW
命令在 SQL 中创建视图。例如,
CREATE VIEW us_customers AS
SELECT customer_id, first_name
FROM Customers
WHERE Country = 'USA';
这里,从 customers 表创建了一个名为 us_customers 的视图。
现在要选择居住在 美国 的客户,我们只需运行,
SELECT *
FROM us_customers;
更新视图
可以使用 CREATE OR REPLACE VIEW
命令更改或更新现有视图。例如,
CREATE OR REPLACE VIEW us_customers AS
SELECT *
FROM Customers
WHERE Country = 'USA';
这里,us_customers 视图已更新以显示所有字段。
删除视图
我们可以使用 DROP VIEW
命令删除视图。例如,
DROP VIEW us_customers;
这里,SQL 命令删除了名为 us_customers 的视图。
注意:如果视图不可用,上述命令将抛出错误。
复杂查询的视图
假设 A 和 B 是两个表,我们想从这两个表中选择数据。为此,我们必须使用 SQL JOIN。
然而,每次都使用 JOIN
可能是一项繁琐的任务。为此,我们可以创建一个视图来轻松获取记录。
我们来创建一个视图,
CREATE VIEW order_details AS
SELECT Customers.customer_id, Customers.first_name, Orders.amount
FROM Customers
JOIN Orders
ON Customers.customer_id = Orders.customer_id;
现在,要选择数据,我们可以运行
SELECT *
FROM order_details;
这里,SQL 命令从视图 order_details 中选择数据。
另请阅读