1
数据库原理与应用技术
1.6.3.1 5.3.1 SELECT语句的一般格式
5.3.1 SELECT语句的一般格式

1. 语句格式

SELECT[ALL | DISTINCT] <目标列表达式> [,<目标列表达式>]…

FROM <表名或视图名>[,<表名或视图名>]…

[WHERE <条件表达式>]

[GROUP BY <列名1> [HAVING <条件表达式>]]

[ORDER BY <列名2> [ASC | DESC] ]…

SELECT子句中的输出可以是列名、表达式、集函数(AVG,COUNT,MAX,MIN,SUM);DISTINCT选项可以保证查询结果集中不存在重复元组;FROM子句中出现多个基本表或视图时,系统首先执行笛卡儿积操作。

2. 语句功能

根据给定的表,按WHERE给出的条件对FROM子句指定的表或视图进行查询,产生一个新表,即查询结果,该查询结果直接显示出来或被保存起来。

3. 语句说明

SELECT子句:指定要显示的属性列,并且由DISTINCT选项决定是否允许在查询结果中出现重复行(内容完全相同的记录)。

FROM子句:指定查询对象(基本表或视图),可以跟多个表名或视图名,它们之间用逗号隔开。

WHERE子句:指定查询条件,只有满足条件的记录(行)才被显示出来。

GROUP BY子句:对查询结果按指定列的值进行分组,属性列值相等的元组为一个组。通常会在每组中选择集函数。

HAVING子句:筛选出只满足指定条件的组。注意:该子句只能同GROUP BY子句配合使用,筛选出符合条件的分组信息。

ORDER BY子句:对查询结果表按指定列值的升序或降序进行排序。

注意:本节所讲述的查询例子都是在SQL Server 2012中运行的,有关它的具体使用可参看第7章。