MySQL 利用视图来提高开发效率

关于视图的定义

《SQLite权威指南》是这么定义的,视图即是虚拟表,也称为派生表,因为它们的内容都派生自其它表的查询结果。虽然视图看起来感觉和基本表一样,但是它们部署基本表。基本表的内容是持久的,而视图的内容是在使用过程中动态产生的。

简单的理解为,视图就是通过一条SELECT语句执行后返回的结果集作为视图表的数据,即create view 视图表名 as select 语句,是对若干张基本表的引用。

一般视图表在命名时,会在其中加上view,另外表名通常会有前缀(如:tb_或者tbl_),因此,视图表的前缀为(tb_view_或者tbl_view_),然后,后面加上表名(注意:视图名不能与基本表名一样)。

为什么使用视图呢?

理由有:复杂查询的需求。我们在定义了一些基本表之后,经常会有一些复杂的关联查询,此时,我们就可以将复杂的关联查询结果集设置为视图。对于,应用层来说,视图的用法和基本表的用法一致。这样带来的好处有:复杂关联语句无需应用层向MySQL数据库发送,只要请求请求相应的视图,除了简化应用层的开发,还能够提升查询速度。

举个栗子:

创建用户信息表:tb_user_center

CREATE TABLE `tb_user_center` (

  `id` int(10) unsigned NOT NULL AUTO_INCREMENT,

  `cuid` int(10) unsigned NOT NULL COMMENT '外部账号uid',

  `username` varchar(50) NOT NULL COMMENT '注册用户名',

  `staff_id` varchar(50) NOT NULL DEFAULT '' COMMENT '工号

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值