SQL

1 列举至少3个Mysql的具体优化?

参考文献:小米和京东的4道关于Dubbo、Zookeeper等的面试题
(1)适当的对表里的字段建立索引

索引是提高数据库性能的常用方法,它可以令数据库服务器以比没有索引快得多的速度检索特定的行。但是索引不能随便建立,具体建立索引的地方,建议如下:

1)查询语句当中包含有MAX(),MIN()和ORDERBY这些命令的时候。

2)用于JOIN,WHERE判断和ORDERBY排序的字段上。

3)尽量不要对数据库中某个含有大量重复的值的字段建立索引,比如如果这个字段是性别的枚举值。

(2)使用联合(UNION)来代替手动创建的临时表

union查询,它可以把需要使用临时表的两条或更多的select查询合并的一个查询中。在客户端的查询会话结束的时候,临时表会被自动删除,从而保证数据库整齐、高效。

在客户端的查询会话结束的时候,临时表会被自动删除,从而保证数据库整齐、高效。
(3)针对select查询语句进行优化

1)在建有索引的字段上尽量不要使用函数进行操作

例如:在一个DATE类型的字段上使用week()函数时,将会使索引不能发挥应有的作用。

2)尽量避免在 where 子句中使用!=或<>操作符,否则将引擎放弃使用索引而进行全表扫描。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章