基本语句优化的9个原则,你知道几个?

基本语句优化的9个原则,你知道几个?

1、尽量避免在列上运算,这样会导致索引失效。

例: 

SELECT * FROM t YEAR(d) >= '2018';

优化:

SELECT * FROM t YEAR >= '2018-01-01';

2、使用JOIN是,应该用小结果集驱动大结果集。同时把复杂的JOIN查询拆分为多个query。因为JOIN多个表时,可能导致更多的表锁定和堵塞。

例:

SELECT * FROM a JOIN on a.id = b.id
LEFT JOIN c ON c.time = a.date
LEFT JOIN d ON c.pid = b.aid
LEFT JOIN e On e.cid = a.did;

3、注意LIKE模糊查询使用,避免%%。

例:

SELECT * FROM a WHERE name LIKE  '%de%';

优化:

SELECT * FROM a WHERE name >= 'de' AND name < 'df';

4、仅列出所需要字段,这样对速度不会有明显影响,主要考虑节省内存占用。

例:

SELECT * FROM a;

优化:

SELECT id FROM a;

5、使用批量插入语句节省交互。

例:

INSERT INTO a (name,age) VALUES ('a',20);
INSERT INTO a (name,age) VALUES ('b',21);
INSERT INTO a (name,age) VALUES ('c',22);

优化:

INSERT INTO a (name,age) VALUES ('a',20),('b',21),('c',22);

6、不要是用rand()函数获取多条记录,效率很慢! 很慢! 很慢!

7、避免是要用NULL。

8、不要使用count(id),而应该使用count(*)。

9、不要做无谓的排序,而应该在索引中完成排序。

基本语句优化的9个原则,你知道几个?

喜欢(0)

评论 抢沙发

表情