我们从一个结果集中查询信息一般都是select * from (select...),每次都要编写from (select...)非常麻烦,于是我们将结果集保存起来,这就是视图的便利。
创建视图的命令为:
create view 视图名称 as (select 语句)
更新视图的命令为:(如果包含聚合函数等是无法修改值的,也就是说计算过后的值),更新操作会同步通新原表数据
update goods set 字段=值
删除视图的命令为:
drop view if exists 视图名称
视图的作用:
(1).权限控制:例如我们只允许查询到商品表中的id,名称,价格,使用视图后查询视图表goods是无法查看到原表shop_goods的其他字段的
create view goods as select id,name,price from shop_goods
select * from goods;
(2).简化复杂的查询:例如select * from (select....)多层嵌套,使用视图更快更方便;视图保存在information_schema库中,并不会因为mysql重启等原因失效.
例如我们需要查询商品表中每个分类中商品id最大的记录,并且显示商品价格以下是表结构:id catename title &nb...
需求查询出存在商品的商品分类. 先看看分类表:id(分类的id) catename(分类名) 1 手机 2 &n...
1.查看所有表,包括视图表,show tables;2.查看表结果,包括视图表,desc 表名3.查看建表过程,show create table 表名;4.查看建视图过程,show create view...
1.很多人认为count查询非常快,但是在加上筛选条件那就是未必的了!测试:user表中4000w数据(1).SELECT count(*) from user; 用时0.00s (2).SELECT...
概述: 目前我们的表设计,最高级别的范式是6NF,对于PHP程序员而言,我们的表满足3NF即可(范式即规范)【一】1NF (1).所谓1NF,就是指标的属性具有原子性,即表的列不能再分割,不能分割意思是字段本身的含义(例如address字段不能再分割)...