目录
一、如何提高查询效率:
那如何提高查询语句的效率呢?
二、视图的使用:
1、视图关键字:view
2、视图的基本使用
3、视图的修改
4、删除视图
三、视图的创建:
四、视图的修改
五、视图的删除
什么是视图?视图有什么作用?
为什么要建立视图?建立视图有什么好处和优点
一、如何提高查询效率:
查询语句也有查询的效率问题,比如说交叉连接与内外连接的区别,交叉连接需要产生一个笛卡尔积的临时表,这样效率比较低
那如何提高查询语句的效率呢?
1、选择有效的表名顺序,select语句一般优先处理写在from子句最后的表,将记录条数最少的或者父辈(被参考表)放在最后可提高查询效率
2、select尽量避免使用*,如果不需要查询所有属性的话,尽量把需要查询的字段一一写出来,而不是用*代替,比如说一共有10个字段,你需要查询其中的9个字段,把9个字段都写上更好,在满足需求的情况下,能少查一个字段就少查一个字段
3、整合简单的数据库查询语句,能一次性查询出来的数据就不要分为两次或者多次查询
4、尽可能使用where替换having,能使用where解决的就不要使用分组查询的having语句,因为having是查询所有记录之后,在进行分组过滤,其中可能还需要排序和统计等,比较繁琐
5、尽量多使用内部函数,少用运算符自己进行的操作,因为内部函数的处理优化的比较好
6、多使用表的别名,以减少解析时间
7、尽量使用exists代替in、not exists 代替 not in
8、尽量用>=代替>等。如:有时候>5和>6所查询的效果是一样的,但是一个先找5,一个是先找6,多找了一个数
二、视图的使用:
1、视图关键字:view
一般格式:create view <视图名> as <查询语句>;
create view <视图名称> as <select <属性名> from <表名>>;
可以查询表中全部数据创建视图,也可查询表中部分数据创建视图
2、视图的基本使用
select *from <视图名>;
视图与上面的查询语句结果一致
3、视图的修改
alter view 视图名 as 查询语句 ;
#将视图更改为其他查询
4、删除视图
drop view 视图名;
三、视图的创建:
select *from student;
create view V_S as select * from student;
-- 视图可以用于代替一条查询语句,相当于为查询语句取一个别名
视图的使用:
select* from V_S;
-- 将视图当做表格来使用
-- 查询视图中的部分属性
select s_id ,s_name from V_S where s_id >=1008;
四、视图的修改
-- 可以修改视图所对应的查询语句
-- 查询所有学生所在班级的班级名称,以及对应班级的任课老师
select S.s_id 学号,S.s_name 学生姓名,C.c_name 班级名称,T.t_name 任课老师
from student S left join class C on S.s_cid = C.c_id
left join teacher T on C.c_tid = T.t_id;
alter view V_S as
select S.s_id 学号,S.s_name 学生姓名,C.c_name 班级名称,T.t_name 任课老师
from student S left join class C on S.s_cid = C.c_id
left join teacher T on C.c_tid = T.t_id;
-- 可以使用视图代替一个复杂的查询语句
-- 也可以对视图创建视图(视图的嵌套)
create view V_SC as select 学生姓名, 班级名称 from V_S;
五、视图的删除
drop view 视图名;
-- 视图只可以用于代替查询语句
-- 视图不占用额外的存储空间
什么是视图?视图有什么作用?
了解了视图的创建和视图的基本使用方法后,大概会有这么一个概念,就是视图可以用于代替查询,多次使用同一个查询语句时,可以为此查询创建一个视图,方便后续使用
视图就相当于为一个查询结果集(虚拟表)创建一个快捷方式
为什么要建立视图?建立视图有什么好处和优点
1、由于有些查询语句又长又麻烦,并且经常使用,这时可以给他创建一个视图,以便于后续操作
2、用户只用关心数据,而不关心数据是如何查询的,表与表之间的连接操作是怎样的,是面向结果,而不是面向过程
3、数据的安全性,视图可以单独设置权限,有些表中的某些数据是不方便给用户看的,视图能使用户只看到表中的部分数据,而没办法看到表中的全部数据和表的结构以及表与表之间的联系,相当于起到一个封装和保密的作用。(如用户查找他人账号信息,就只能看到一些基本信息,而不能看到账号密码等私密信息了)
4、数据独立,一旦视图确定,原表中其他数据的修改很难影响到视图,除非修改或者删除了视图中所涉及的字段或属性值文章来源:https://www.toymoban.com/news/detail-425564.html
总的来说,视图使查询变的更加简单,安全,数据独立性得到了提高。文章来源地址https://www.toymoban.com/news/detail-425564.html
到了这里,关于什么是视图(保姆版)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!