创建视图本质上就是把一个 SELECT 查询保存为一个可复用对象。
基本语法如下:
CREATE VIEW 视图名 AS
SELECT 查询语句;例如:
CREATE VIEW user_simple AS
SELECT id, name, mobile
FROM user;最简单的情况是基于单表创建视图。
例如:
CREATE VIEW article_brief AS
SELECT id, title, created_at
FROM article;这适合:
- 只暴露部分字段
- 简化重复查询
- 做轻量查询封装
视图也可以建立在多表连接查询之上。
例如:
CREATE VIEW order_user_view AS
SELECT o.id AS order_id, o.amount, u.name
FROM orders AS o
INNER JOIN user AS u ON o.user_id = u.id;这种方式尤其适合把复杂的多表关联结果封装起来,供后续重复使用。
创建视图的关键不是语法,而是决定“哪些查询值得抽出来复用”。单表视图适合裁剪字段,多表视图适合封装复杂连接查询。