select语句完整的执行顺序

select语句完整的执行顺序

ID:6336582

大小:34.00 KB

页数:6页

时间:2018-01-10

select语句完整的执行顺序_第1页
select语句完整的执行顺序_第2页
select语句完整的执行顺序_第3页
select语句完整的执行顺序_第4页
select语句完整的执行顺序_第5页
资源描述:

《select语句完整的执行顺序》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、SQLSelect语句完整的执行顺序:1、from子句组装来自不同数据源的数据;2、where子句基于指定的条件对记录行进行筛选;3、groupby子句将数据划分为多个分组;4、使用聚集函数进行计算;5、使用having子句筛选分组;6、计算所有的表达式;7、使用orderby对结果集进行排序。另外:一个查询语句各个部分的执行顺序:--8)SELECT(9)DISTINCT(11)--(1)FROM--(3)   

2、pe>JOIN--(2)     ON--(4)WHERE--(5)GROUPBY--(6)WITH{CUBE

3、ROLLUP}--(7)HAVING--(10)ORDERBYSQLSelect语句完整的执行顺序2008-05-3012:09SQLSelect语句完整的执行顺序:1、from子句组装来自不同数据源的数据;2、where

4、子句基于指定的条件对记录行进行筛选;3、groupby子句将数据划分为多个分组;4、使用聚集函数进行计算;5、使用having子句筛选分组;以下结论是通过在SqlServer2000上的实验得出的结论,也可通过查看估计的执行计划(Ctrl+L)来查看执行顺序。1.先执行等号(=)左边是变量的表达式(A类),再执行等号(=)左边是列名的表达式(B类)。例:updatetablenamesetcolumnName=@variable,@variable=@variable+1先执行@variable=@variable+

5、1,再执行columnName=@variable2.如果有多个A类(或B类)表达式,按从左到右顺序执行A类(或B类)表达式。例:updatetablenamesetcolumnName=@variable,@variable=@variable+1,@variable=2*@variable先执行@variable=@variable+1,再执行@variable=2*@variable,最后执行columnName=@variable3.列名所代表的值永远是原值。例:updatetablenamesetcolum

6、nName=colunName+1,columnNameBagroupby   在select语句中可以使用groupby子句将行划分成较小的组,然后,使用聚组函数返回每一个组的汇总信息,另外,可以使用having子句限制返回的结果集。groupby子句可以将查询结果分组,并返回行的汇总信息Oracle按照groupby子句中指定的表达式的值分组查询结果。  在带有groupby子句的查询语句中,在select列表中指定的列要么是groupby子句中指定的列,要么包含聚组函数  selectmax(sal),jobe

7、mpgroupbyjob;  (注意max(sal),job的job并非一定要出现,但有意义)  查询语句的select和groupby,having子句是聚组函数唯一出现的地方,在where子句中不能使用聚组函数。selectdeptno,sum(sal)fromempwheresal>1200groupbydeptnohavingsum(sal)>8500orderbydeptno;当在gropuby子句中使用having子句时,查询结果中只返回满足having条件的组。在一个sql语句中可以有where子句和h

8、aving子句。having与where子句类似,均用于设置限定条件where子句的作用是在对查询结果进行分组前,将不符合where条件的行去掉,即在分组之前过滤数据,条件中不能包含聚组函数,使用where条件显示特定的行。having子句的作用是筛选满足条件的组,即在分组之后过滤数据,条件中经常包含聚组函数,使用having条件显示特定的组,也可以使用多个分组标准进行分组。查询每个部门的每种职位的雇员数selectdeptno,job,count(*)fromempgroupbydeptno,job;OracleS

9、QL性能优化技巧1.选用适合的ORACLE优化器    ORACLE的优化器共有3种    A、RULE(基于规则)b、COST(基于成本)c、CHOOSE(选择性)    设置缺省的优化器,可以通过对init.ora文件中OPTIMIZER_MODE参数的各种声明,如RULE,COST,CHOOSE,ALL_ROWS,FIRST_ROWS。你

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。