要写好sql查询语句,我们需要非常清楚sql查询语句的各分支的执行顺序, 个分支的执行顺序如下:
1 SELECT ... #7 2 FROM ... [JOIN ... #1 3 ON ...] #2 4 WHERE ... #3 5 GROUP BY ... [ #4 6 HAVING ] #5 7 ORDER BY [DESC] #6
我觉得有必要说明一下为什么要去理解sql语句的执行顺序。对于没有学过编程语言的人来说, 最容易看懂的是sql语句,因为sql是一种描述性语句,跟生活用语比较接近, 而跟我们学得主流编程语言--- C/C++,Java,Python 的指令式结构语言有很大区别。sql语句提交给数据库管理系统时,最终会转化成上述指令式结构, 把一个sql语句分成好几个指令序列流,按顺序依次执行。
上图中,sql查询的所有分支,#1, #7是必须的,其他是可选的。
版权声明
本博客所有的原创文章,作者皆保留版权。转载必须包含本声明,保持本文完整,并以超链接形式注明作者Saturn和本文原始地址:
https://ndtm-idea.blogspot.com/2013/07/projectssqldocumentsquery-execution.html
0 comments:
Post a Comment