1. 犀牛前端部落首页
  2. 数据库百科

SQL视图

SQL视图

使用SQL可以做的一件有趣的事情是创建一个视图。

视图类似于表,不同的是,它本身不是一个真正的表,而是由SELECT查询的结果动态构建的。

让我们使用我们在之前SQL JOIN中使用的例子:

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
);

我们添加一些数据:

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,它总是包含一个汽车模型和它的主人的年龄之间的相关性:

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

下面是我们可以用SELECT * FROM car_age检查的结果:

        model         | owner_age 
----------------------+-----------
 Fiesta               |        37
 Mustang              |         8

视图是持久的,看起来像数据库中的一个表。你可以删除一个视图使用DROP VIEW:

DROP VIEW car_age

原创文章,作者:犀牛前端部落,如若转载,请注明出处:https://www.pipipi.net/5143.html

发表评论

登录后才能评论