1. 问题
对于复杂的查询,往往是由多个数据表进行关联查询得到的,如果数据库因为需求等原因发生了改变,为保证前后查询出的数据相同,需要在多个地方进行修改,这个月维护起来很麻烦。
2. 视图
通俗地讲,视图就是一条SELECT语句执行后反回的结果集。
视图是对若干张基本表的引用,一张虚拟表,查询语句执行的结果。
create view v_goods_info as select g.*, c.name as cate_name, b.name as brand_name from goods as g left join goods_cates as c on g.cate_id=c.id left join good_brand as b on g.brand_id=b.brand_id;
3. 视图的作用
1. 提高了重用性
2. 对数据库重构,不影响程序运行
3. 提高安全性能,可以对不同的用户
4. 让数据更加清晰