本周开始主要学习了黑马程序员中MYSQL的进阶篇,学习了
1.存储引擎:INNODB,MYISAM,MEMORY,主要需要明白INNODB的特点事务,行级锁,外键;
2.索引:是一种高效获取数据的数据结构,索引结构:B+Tree,Hash。B+Tree是主要的索引,最终在叶子结点会存储数据,并形成双向链表,提高了查询的效率,并且由于分叶子结点不存储数据,所以存放的key,data更多,更便于查询;Hash是根据哈希算法得到一种哈希值,主要是对具体数据的查找,不利于范围查询,但其中有一个问题,就是哈希冲突,就是对于所查到的哈希值可能有相同的,可以根据链表解决。 索引的分类,根据存储形式分类以及索引创建,查看,删除的语法 SQL性能分析(查询):根据SQL执行频率进行优化,优化的方式:慢查询日志,profile详情,explian检查执行计划,索引使用,最左前缀法则,范围查询,索引列运算,字符串不加引号等等;
3.SQL优化:插入优化,主键优化,order by优化,group by优化,limit优化,update优化,count优化等;
4.视图:一种虚拟的表,用来保存查询的SQL逻辑,安全,简单,数据独立;
5.存储过程,存储函数,触发器。