性能问题出现的原因
- SQL语句写得不佳,没有优化
- 索引失效导致查询速度慢
- 关联查询太多join
- 服务器调优以及各个参数设置(缓冲,线程数等等)
SQL执行加载顺序
SQL语句书写顺序
SELECT DISTINCT
<select_list>
FROM
< left_table > < join_type >
JOIN < right _ table > ON < join_condition >
WHERE
<where_condition>
GROUP BY
<group_by_list>
HAVING
<having_condition>
ORDER BY
<order_by_condition>
LIMIT < limit_number >
计算机读取SQL语句的顺序
1 FROM <1eft_table>
2 ON <join_condition>
3<join_type>JOIN<right_table>
4 WHERE <where_condition>
5 GROUP BY <group_by_list>
6 HAVING <having_condition>
7 SELECT
8 DISTINCT <select list>
9 ORDER BY <order_by_condition>
1O LIMIT < limit _ number >
MySQL5.5当中SQL解析的顺序

join理论小提示
在mysql当中可以用union合并左查询和右查询得到全有查询,union自带去重的功能。