- 1、本文档共34页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
SQL语言的高级用法
第二章 SQL 语言的高级用法 37
第二章 SQL 语言的高级用法
内容摘要
列出结果集中的前 n 个记录;
使用聚集函数;
GROUP BY 使用基础;
用语句 GROUP BY 在结果集中生成集合;
使用 COMPUTE 和 COMPUTE BY 子句;
使用表的别名;
连接查询多个表中的数据;
连接多个结果集;
子查询介绍;
把子查询用作派生的表;
把子查询用作表达式;
用子查询关联数据;
使用 EXISTS 和 NOT EXIT 子旬;
考点提示
熟练掌握内容摘要中的所有语法
2.1 用 TOPn 列出前 n 个记录
关键字 TOP n 可以列出结果集中前 n 个或前 n%的记录。尽管 TOP n 不符合 ANSI
标准,但确实非常有用的,例如,可以使用它列出某公司最畅销的几种产品。
使用关键字 Top n 或 TOP n PERCENT 时,应注意以下事项:
在 ORDER BY 子句中指定排序的范围。如果你不使用 ORDER BY,微软
SQL Server 2000 将按任意顺序返回满足 WHERE 子句的记录;
在关键字 TOP 后使用无符号的整数;
如果 TOP n PERCENT 创建小数,则 SQLServer 将取这个数的下一个整
数;
可以在结果集中用 WlTH TIES 子句包含那些数值相等的记录。如果使
用了 ORDER BY 子句,则当出现两个或多个记录和最后一条记录的值相
等时,这些记录也将出现在结果集中。此时你的结果集可能包含任意
数目的记录,而不只是前 n 个记录或前 n%个记录。
38 MCSE 2000 系列—SQL 2000 编程
注意:只用在用子句 ORDER BY 时,才能用 WITH TIES。
下面的例子使用关键字 TOP n 查询在一次订购中,订购数量最多的前 5 个记录。
注意结果集中并不列出数量一样的记录。
USE northwind
SELECT TOP 5 orderid,productid,quantity
FROM [order details] ·
ORDER BY quantity DESC
GO
运行结果:
orderid productid quantity
10764 39 130
11072 64 130
10398 55 120
10451 55 120
10515 27 120
(5row(s)affected)
下面的例子中使用了关键字 TOPn 和 WITHTIES 子句,它们列出了一次订购中,
订购数量最多的 5 个产品。结果集中一共包含 10 条记录,因为表中有订购数量和
前一条记录相同的其他记录存在。比较这个例子和上个例子的结果集的不同之处。
USE northwind
SELECT TOP 5 WITH TIES orderid,productid,quantity
FROM [order details]
ORDER BY quantity DESC
GO
运行结果:
orderid productid quantity
10764 39 130
11072 64 130
10398 55 120
10451 55 120
10515 27 120
10595 61
文档评论(0)