|
类似于ROW_NUMBER函数,RANK和DENSE_RANK函数都能使用可选的PARTITION BY语句。
五、 使用NTILE函数对评价结果进行分组
SQL Server 2005新引入的最后一个与T-SQL函数相关的评价函数是NTILE(int)。NTILE象其它的评价函数一样操作,但是它能够把结果分成组,每组中相应相同评价结果的记录。你可以使用NTILE函数把结果分解成两组、三组或四组等,如下例所示:
SELECT ProductID,Name,Price,NTILE(4) OVER (ORDER BY Price DESC) as QuartileFROM Produts 这个语句将返回如下表所示的结果:
| ProductID | Name | Price | Quartile | | 8 | Desk | 495.0000 | 1 | | 10 | Executive Chair | 295.0000 | 1 | | 9 | Chair | 125.0000 | 2 | | 5 | Mouse | 14.9500 | 2 | | 6 | Mousepad | 9.9900 | 3 | | 11 | Scissors | 8.5000 | 3 | | 4 | Stapler | 7.9500 | 4 | | 3 | Binder | 1.9500 | 4 |
在随本文下载的演示程序中,我提供了一个例子,它使用了一个具有NTILE函数的视图来答应用户有选择地查看各种分组的最大订单量。
六、 结论
在本文中,我们探讨了SQL Server 2005中的四个新函数的用法。这四个新函数分别是:ROW_NUMBER,RANK,DENSE_RANK和NTILE。与SQL Server 2000使用的旧技术相比,它们使得返回评价结果更为轻易。然而,这些函数仅仅是SQL Server 2005中所提供的新的T-SQL特征中的极少的一部分。
|
| 共4页: 上一页 [1] [2] [3] 4 下一页 |
评论加载中…