返回结果集分区内行的序列号,每个分区的第一行从 1 开始。
Transact-SQL 语法约定
语法
ROW_NUMBER ( ) OVER ( [ <partition_by_clause> ]
<order_by_clause> )
备注
orDER BY 子句可确定在特定分区中为行分配唯一 ROW_NUMBER 的顺序。
参数
<partition_by_clause>
将 FROM 子句生成的结果集划入应用了 ROW_NUMBER 函数的分区。
<order_by_clause>
确定将 ROW_NUMBER 值分配给分区中的行的顺序。有关详细信息,请参阅 orDER BY 子句
(Transact-SQL)。
有关详细信息,请参阅 OVER 子句 (Transact-SQL)。
返回类型
bigint
示例
以下示例将根据年初至今的销售额,返回 AdventureWorks 中销售人员的 ROW_NUMBER。
复制代码
USE AdventureWorks
GO
Select c.FirstName, c.LastName, ROW_NUMBER() OVER(ORDER BY
SalesYTD DESC) AS 'Row Number', s.SalesYTD, a.PostalCode
FROM Sales.SalesPerson s JOIN Person.Contact c on s.SalesPersonID =
c.ContactID
JOIN Person.Address a ON a.AddressID = c.ContactID
Where TerritoryID IS NOT NULL AND SalesYTD <> 0
以下示例将返回行号为 50 到 60(含)的行,并以 orderDate 排序。
复制代码
USE AdventureWorks;
GO
WITH orderedOrders AS
(Select SalesOrderID, orderDate,
ROW_NUMBER() OVER (order by orderDate)as RowNumber
FROM Sales.SalesOrderHeader )
Select *
FROM orderedOrders
Where RowNumber between 50 and 60;
分享到:
相关推荐
一.SQL Server Row_number函数简介 ROW_NUMBER()是一个Window函数,它为结果集的分区中的每一行分配一个连续的整数。 行号以每个分区中第一行的行号开头。 以下是ROW_NUMBER()函数的语法实例: select *,row_...
ROW_NUMBER()说明:返回结果集分区内行的序列号,每个分区的第一行从 1 开始。语法:ROW_NUMBER () OVER ( [ ... <order>:确定将 ROW_NUMBER 值分配给分区中的行的顺序。返回类型:bigint 。示例:/*以下示例将
sqlserver2005使用row_number() over分页的实现方法,需要的朋友可以参考下。
设置sqlServer使用ROW_NUMBER时不排序 –1.看到NHibernate是这样写的分页,感觉写起来比较容易理解(应该不会有效率问题吧?) –with只是定一个别名? [sql] with query as (select ROW_NUMBER() over(order by ...
partition by关键字是分析性函数的一部分,partition by用于给结果集分组,如果没有指定那么它把整个结果集作为一个分组,本文给大家介绍SQLServer中Partition By及row_number 函数使用详解,需要的朋友参考下
在SqlServer2005中,提供了一个row_number()的函数,我们经常用它做DataBase数据分页.
本文为大家分享了SQL Server使用row_number分页的实现方法,供大家参考,具体内容如下 1、首先是 select ROW_NUMBER() over(order by id asc) as ‘rowNumber’, * from table1 生成带序号的集合 2、再查询该集合的 ...
在SQL Server2005中有如下四个排名函数: 1.row_number 2.rank 3.dense_rank 4.ntile 下面分别介绍一下这四个排名函数的功能及用法。在介绍之前假设有一个t_table表,表结构与表中的数据如图1所示: ...
SELECT SalesOrderID, CustomerID, ROW_NUMBER() OVER (ORDER BY SalesOrderID) AS RowNumber FROM Sales.SalesOrderHeader结果集:SalesOrderID CustomerID RowNumber————— ————- —————43659 ...
在查询时应用了一个排序标准后,只有通过编号才能够保证其顺序是一致的,当使用ROW_NUMBER函数时,也需要专门一列用于预先排序以便于进行编号。 ROW_NUMBER() 说明:返回结果集分区内行的序列号,每个分区的第一行从...
您可能感兴趣的文章:使用SQL Server数据库嵌套子查询的方法常用SQL语句(嵌套子查询/随机等等)详细整理SQL Server高级内容之子查询和表链接概述及使用详细讲述MySQL中的子查询操作浅谈MySQL中的子查询优
从SQL Server 2005开始,增加了一个新的函数Row_Number(),他的一个很伟大的作用就是可以在数据表中添加一列从1开始的行号,这样大大代替所有多余的代码来产生行号。下面就教大家如何使用Row_Number()函数。 假设...
之前sql server 的排名函数用得最多的应该是RoW_NUMBER()了,我通常用ROW_NUMBER() + CTE 来实现分页;今天逛园,看到另一个内置排名函数还不错,自己顺便想了一个需求,大家可以花1分钟先想想要怎么实现。 需求...
在SQL Server中使用CLR调用.NET方法; 函数的用法; 事务; 数据导入导出; 优化SQL Server的内存占用之执行缓存篇; 字符串的处理; exec sp_executesql @s与Exec(@s)的区别; SQL 2005新增的几...