Bobby

聚沙成塔 集腋成裘
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

SQL Top注意事项

Posted on 2007-12-10 14:45  Bobby  阅读(1783)  评论(0编辑  收藏  举报
T-SQL TOP 选项有两处显著的功能增强。现在您可以将一个表达式指定为 TOP 的参数,表达式可以包含变量甚至是独立的查询。您还可以通过改进型 DML (INSERT, UPDATE, DELETE) 使用 TOP 选项。 为了指定一个表达式,必须将它用括号括起来。当不使用 PERCENT 选项时,表达式应该是 BIGINT 数据类型的;当使用 PERCENT 选项时,应该是范围从 0 到 100 的一个浮点值。以下代码说明了如何使用带有一个变量的表达式,以按所请求数量返回 AdventureWorks 数据库中 SalesOrderHeader 的最早定单: USE AdventureWorks DECLARE @n AS BIGINT SET @n = 5 SELECT TOP (@n) * FROM SalesOrderHeader AS SOH ORDER BY OrderDate, SalesOrderID SalesOrderID 用作附加键。类似的,以下示例说明了如何使用 PERCENT 选项按所请求百分比返回最早定单: DECLARE @p AS FLOAT SET @p = 0.01 SELECT TOP (@p) PERCENT * FROM SalesOrderHeader AS SOH ORDER BY OrderDate, SalesOrderID