一、多表查询
1.内连接
inner可以省略
2.外连接
3.联合查询
4.子查询
子查询返回两个字段
二、事务
mysql事务是自动提交的,可以设置改成手动提交
或者手动开启事务
1.四大特性
2.隔离性
设置mysql隔离级别
全局设置,修改mysql.ini配置文件或者 set global transaction isolation level read uncommitted
对当前session修改,set session transaction isolation level read uncommitted
3.事务原理
三、存储引擎
1.指定存储引擎
存储引擎是基于表的,不同的表可以有不同的存储引擎
2.InnoDB
InnoDB存储引擎每张表都对应一个.idb文件,里面包括表结构,数据,索引等信息
InnoDB在5.6版本之后支持全文索引
四、索引
1.优劣
2.索引结构
3.B+树
4.Hash索引
5.InnoDB为啥是B+tree
6.分类
7.创建索引
8.是否需要创建索引
查看sql执行频率(select多的适合创建索引)
9.指定索引
10.前缀索引
11.索引设计原则
五、sql优化
1.插入数据
2.主键优化
3.order by优化
3.update语句
InnoDB默认是使用行锁,但行锁是针对索引加的锁,如果where的条件字段没有索引,则会升级成表锁,所有尽量根据主键更新。