码迷,mamicode.com
首页 > 数据库 > 详细

SQL查询中关键词的执行顺序

时间:2015-01-18 17:05:44      阅读:753      评论:0      收藏:0      [点我收藏+]

标签:

1、查询中常用到的关键词有:

SELECT、FROM、WHERE、GROUP BY、HAVING、ORDER BY

其中,SELECT与FROM是必需的,其他关键词则是可选的。

2、这些关键词的书写顺序:

SELECT 字段列表

FROM 表名

WHERE 记录筛选条件

GROUP BY 分组字段列表

HAVING 分组筛选条件

ORDER BY 排序字段列表

3、WHERE与HAVING的区别:

WHERE是对记录进行筛选;而HAVING是对按GROUP BY进行分组后的组进行筛选。

HAVING只有在使用GROUP BY 后才能使用。

4、GROUP BY的两个作用:

第一个作用是,将从表中取出的记录按照一个或者多个字段进行分组;

第二个作用是,去重,其本质仍然是分组。

5、这些关键词的执行顺序:

FROM->WHERE->GROUP BY->HAVING->SELECT->ORDER BY

具体的说:

FROM:从指定的数据表中检索记录

WHERE:根据指定的条件过滤检索出的记录

GROUP BY:对上面过滤后的记录按指定条件分组

HAVING:对所有分组根据指定条件进行过滤

SELECT:从上一步过滤后的各个分组记录中提取指定查询的字段列表(包括聚合字段、计算字段、表达式字段等)

ORDER BY:对上一步查询得到的结果集按照排序字段列表进行排序,并输出排序结果

6、GROUP BY 字段1,字段2——先对所有记录按照字段1进行分组,然后对分组后的结果再在没组内按照字段2分组。

7、ORDER BY 字段1,字段2——先按照字段1进行排序,再按照字段2进行排序。

8、排序规则关键字:ASC(升序,默认)、DESC(降序)。

9、COUNT关键字,作计数使用。COUNT(*)是做候选数据集的整体计数,COUNT(字段)是对某字段进行计数。如果牟烈出现NULL值时,COUNT(*)会算入该列,COUNT(字段)则不会算入该列。

 

 

参考:《查询语句中select from where group by having order by的执行顺序》,感谢。

SQL查询中关键词的执行顺序

标签:

原文地址:http://www.cnblogs.com/hbsygfz/p/4231828.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!