前辈们总结的经验,学习、学习。
1.尽量避免在列上进行运算,这样会导致索引失效。
例如:SELECT FROM t WHERE YEAR(d) >=2011; 优化为:SELECT FROM t WHERE d >=’2011-01-01’;
2.使用JOIN时,应该用小结果集驱动大结果集。
同时把复杂的JOIN查询拆分成多个QUERY。因为JOIN多个 表时,可能导致更多的锁定和堵塞。 SELECT * FROM a JOIN b ON a.id=b.id LEFT JOIN c ON c.time=a.date LEFT JOIN d ON c.pid=d.aid LEFT JOIN e ON e.cid=a.did