文档介绍:SQLServer数据库查询的统一语句框架
 
 
包希日莫
[摘 要] 查询语句的教学在高校计算机专业的数据库教学中占有重要地位。在数据库的查询语句教学中引入了查询语句统一语句框架以及相应的问答填空式语句构建方法和及根据需要给出的函数或系统变量列表。例如
SELECT HOST_NAME( ),@***@SERVERNAME,DB_NAME( ),@***@VERSION
该语句查询当前的主机名称、服务器名称、数据库名称以及SQL Server版本。
(二)路径②、③
SELECT语句以数据表为查询对象时,SELECT关键字后可以跟随筛选记录条件,如TOP n、TOP n PERCENT等,之后应为由要求返回其值的列、常量、变量或函数构成的列表。
对数据表进行非外连接查询时,SELECT语句中应包含FROM关键字和被查询数据表的名称列表,当这种查询为条件查询时,还应包含WHERE关键字和查询条件。例如
SELECT TOP n ,
FROM Table1,Table2
WHERE >=
>= 。
对数据表进行返回未匹配记录的外连接查询时,SELECT语句应包含
FROM ( )
RIGHT|LEFT|FULL JOIN ( )
ON ( )
FROM、JOIN和ON关键字后依次为左数据表名称、右数据表名称和匹配条件。外连接查询的实例请参见本文的第二个例子。
(三)路径④
对数据表的查询结果进行分组时,SELECT语句应包含GROUP BY和作为分组依据的列的名称,需要对分组结果进行进一步筛选时,应包含HAVING关键字和筛选条件。例如
SELECT Column1,Function1(*),Function2(Column2)
FROM Table1
GROUP BY Column1
HAVING Column1> n
该语句将Column1的值相同的记录划为一组,返回满足条件Column1> n的各组的Column1列、Funtion1(*)函数和Function2(Column2)函数的值。
(四)路径⑤
需要对查询结果进行排序时,SELECT语句中应当引入ORDER BY、排序依据以及升序、降序选择。例如
SELECT Column1,Column2
FROM Table1
ORDER BY Column2 DESC
该语句对查询结果以Column2的降序进行排序。需要指出的是,如果GROUP BY后使用ORDER BY,则对分组结果进行排序。例如
SELECT Column1, Function1(Column2)
FROM Table1
GROUP BY Column1
ORDER BY Function1(Column2) DESC
该语句对数据表Table1的内容以Column1为依据进行分组,计算每组记录的Function1(Column2)值,最后对分组结果按Function1(Column2)的降序进行排序。