SQLServer ntile获取每组前10%的数据
更新时间:2009年08月29日 03:20:50 作者:
sqlserver2005有关键字ntile(x)和over(partition by.. order by..)子句配合.
比如获取每个表的前10%个字段。
select id , name , colid , rn from (
select * , rn = ntile (10 )
over (partition by id order by colorder )
from syscolumns )t where rn = 1
复制代码 代码如下:
select id , name , colid , rn from (
select * , rn = ntile (10 )
over (partition by id order by colorder )
from syscolumns )t where rn = 1
相关文章
安装MSSql2005时 “以前的某个程序安装已在安装计算机上创建挂起” 的解决办法
安装MSSql2005时 “以前的某个程序安装已在安装计算机上创建挂起” 的解决办法2010-02-02
SQL 2005使用专用管理员连接(DAC)的技巧及修改系统表的方法
SQL Server 2005 为管理员提供了一种特殊的诊断连接,以供在无法与服务器建立标准连接时使用。2011-07-07
使用SQLSERVER 2005/2008 递归CTE查询树型结构的方法
我们经常遇到树型结构,把它们显示在一个类似TreeView控件上的情况。这时我们可以使用Recursive Common Table Expressions(CTE)实现2011-10-10


最新评论