MYSQL系列-Mysql进阶实战总结

Mysql进阶实战总结

 
学习Mysql更多强大的功能,使用并了解其原理和使用方法。下面是我对Mysql使用的一些知识点总结。
 
 
Mysql视图:
理解:视图即为一张虚拟表,与普通的Mysql表相比较它是不真实存储数据的,那么它作为一张表的作用是什么呢?即是当我们使用大量的复杂sql的时候(比如内联、外联等)想去获得一个比较全面的数据时,我们将复杂SQL语句整理成一个对应的虚拟表,这样我们最后只需要查询虚拟表带上where条件则可以查询自己想要的结果了。
举例:假设有A表   B表  C表,他们存储了自己响应的数据。当我们需要同时返回其中的某个字段值时,我们通常做法:
select * from ((A a inner join B b on a.id=b.id)  inner join C c on b.id=c.id) where a.id='1'
这时我们可以把除where条件以外的sql语句包装成一个虚拟表--D,这样我们可以使用 select * from D where id='1' 去达到相同效果。
 
视图的创建与使用:
语法:create or replace view 视图名(虚拟表名)as select ....
使用:select * from 视图名 where ....
视图的本质:视图就是一张虚拟表,不存在存储数据,每次都是查询从普通表中获得数据进行组合。
 
 
 
Mysql索引:(重点)
索引分为:单列索引、复合索引、唯一索引、主键索引等。
 
单列索引:即是最基本的索引,没有任何限制。
 
注:当表被创建时,主键的定义字段会自动创建索引,这是一种特殊索引---丛生索引。其中Seq_in_index表示索引字段的顺序。(show index from tablename可以查看表中的索引信息)
 
复合索引:复合索引是在多个字段上创建的索引。遵守“最左前缀”原则,即在查询条件中使用了复合索引的第一个字段,索引才会生效。因此在使用复合索引时----复合索引中索引顺序极其重要。
 
注:复合索引的重点就是使用索引生效的首要条件就是在where条件里面必须包含复合索引中的第一个字段,否则复合索引不起作用。
 
 
唯一索引:唯一索引必须创建关键字“UNIQUE”,唯一索引限制列的值必须唯一,但允许有空值。对于多个字段,要求组合值必须唯一。
 
主键索引:也称为---丛生索引,是一种特殊的唯一索引,不允许有空值。(一般建表时指定主键后,会自动创建)
 
索引的使用:
 
1.where 条件中的字段适合作为索引;
2.尽量不要将一些只包含“是/否”的字段作为索引,不管如何都是五五开;
3.不要过度使用索引,每次增删改会维护表的索引;
4.在InnonDB引擎中,记录默认会按照一定顺序存储,如果已经定义主键,则按照主键顺序存储。由于普通索引会保存主键键值,故主键应尽可能选择较短的数据类型,减少存储空间。
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值