视图的两种实现

视图

视图本身是一个虚拟表.不存放任何数据.在使用SQL语句访问视图的时候,它返回的数据是MySQL从其他表中生成的.视图和表是在同一个命名空间,不能对视图创建触发器.

MySQL可以使用两种办法来处理视图,分别是合并算法临时表算法.

如果使用的是临时表算法实现的视图,EXPLAIN中会显示为派生表(DERIVED).

如果视图中包含GROUP BY,DISTINCT,任何聚合函数,UNION,子查询等.只要无法在原表记录和视图记录中建立一一映射的场景中,MySQL都将使用临时表算法来实现视图.

猜你喜欢

转载自blog.csdn.net/qq_40925525/article/details/103654149