最近有点忙,都没有时间来写博客了。
不过这也是自我沉淀的一个过程。
什么是视图?
视图并没有想象的那么复杂,简单来说的话。
视图就是把你写的SQL保存起来,在使用视图的时候等于使用了这么个SQL。
为什么要用视图?
当业务足够复杂的时候,多个表之间的数据关联越来越紧密。当我们要找一条数据的时候往往要写长的SQL。
而这些SQL往往都是可以重复使用的。
于是,当我们有了视图之后,就通过视图直接查询即可。
视图是虚拟表,本身不存储数据,而是按照指定的方式进行查询。
如何创建一个视图?
CREATE VIEW 视图名(列1,列2...) AS SELECT (列1,列2...) FROM ...;
这里是向外暴露的字段 搜索的SQL
先举一个简单的例子,我建立一个 user 的视图
CREATE VIEW v_user AS (SELECT * FROM user);
很简单,对吧。
这里查看一下你的表
mysql> show tables; +----------------------------------+ | test | +----------------------------------+ | user | | v_user | +----------------------------------+ 11 rows in set (0.00 sec)
视图就像一张表一样存在。
如何使用视图?
使用视图和使用表完全一样,只需要把视图当成一张表就OK了。视图是一张虚拟表。
就像使用表一样,不过对于视图来说,只推荐查找,虽然说也可以用与增删改,但是视图过于复杂的话有很大问题会出错。
SELECT * FROM v_user; 查找所有人员信息 SELECT * FROM v_user whser id =1; 查找ID等于1人员信息
就像正常查找数据表一样