数据库优化建议

关于索引:

使用索引的情况:

1.主键必须建立索引(推荐使用数值作为主键,性能最高)

2.外键列也要建立索引

3.经常查询的列建立索引

4.经常出现在where条件中的列建立索引

5.order by、group by、distinct 字段建立索引

6.聚合运算或where条件时,先写有索引的字段

不使用索引的情况:

1.基本不怎么查询的字段

2.重复值比较多的字段(比如:性别、状态等)

3.text、image字段不要索引

4.一张表的索引不要太多(不超过10个)

关于SQL优化:

1.对列的计算尽量避免

2.in查询、or查询 会导致索引失效。可以使用两个语句来代替in或or查询,比如使用union all,例如下图所示

使用下面下面的语句代替上面的or语句,下面的查询会走索引。

3.in换成exists,not in 尽量不用,not in不走索引。

4.is null和is not null两个都不走索引。

5.不等号(<>)不走索引,可以拆分成>和<

6.join时,链接数越少性能越高。

left join时,左表先筛选后再和右表进行关联,可以减少关联数量,提升效率。right jion同理,先对右表筛选后和左表关联。

关联字段最好使用索引。

猜你喜欢

转载自blog.csdn.net/liangmengbk/article/details/115426834