Mysql -SQL 优化技巧

优化技巧

  1. group by 分组查询,默认分组后,还会排序,可能会降低速度,可以在 group by 之后加上 order by null 来阻止分组后的排序
  2. 表连接的形式(如子查询),如果可以最好使用 join 形式处理,因为join不需要在内存中创建临时表
  3. 优化查询时,尽量避免全表扫描,首先应该考虑在where与order by 涉及的列上建立索引
  4. 不要在where子句中对字段进行null判断,因为存储引擎会放弃使用索引进而进行全表扫描
  5. 在设计表时,最好所有字段都 not null

存储引擎

MyISAM 与 INNODB

  1. myisam 不支持事务,innodb 支持
  2. 查询与添加速度,myisam更快
  3. myisam支持全文索引,innodb 不支持
  4. myisam为表锁,innodb为行锁
  5. myisam不支持外键,innodb支持,不过一般在程序中处理关系,不在表设计小提现
各存储引擎比较