`
speed_guo
  • 浏览: 313853 次
  • 性别: Icon_minigender_1
  • 来自: 湖北
社区版块
存档分类
最新评论

ROW_NUMBER (Transact-SQL)

 
阅读更多

ROW_NUMBER (Transact-SQL)

返回结果集分区内行的序列号,每个分区的第一行从 1 开始。

 

语法:

ROW_NUMBER ( )     OVER ( [ <partition_by_clause> ] <order_by_clause> )

 

参数:

<partition_by_clause>

FROM 子句生成的结果集划入应用了 ROW_NUMBER 函数的分区。若要了解 PARTITION BY 语法,请参阅 OVER 子句 (Transact-SQL)

<order_by_clause>

确定将 ROW_NUMBER 值分配给分区中的行的顺序。有关详细信息,请参阅 ORDER BY 子句 (Transact-SQL)。当在排名函数中使用 <order_by_clause> 时,不能用整数表示列。

 

 

返回类型:

bigint

注释:

ORDER BY 子句可确定在特定分区中为行分配唯一 ROW_NUMBER 的顺序。

示例:

SELECT FirstName, LastName, ROW_NUMBER() OVER(ORDER BY SalesYTD DESC) AS 'Row Number', SalesYTD, PostalCode

FROM Sales.vSalesPerson

WHERE TerritoryName IS NOT NULL AND SalesYTD <> 0;

将 ROW_NUMBER () 与 PARTITION 一起使用

SELECT FirstName, LastName, ROW_NUMBER() OVER(PARTITION BY PostalCode ORDER BY SalesYTD DESC) AS 'Row Number', SalesYTD, PostalCode
FROM Sales.vSalesPerson
WHERE TerritoryName IS NOT NULL AND SalesYTD <> 0;

分享到:
评论

相关推荐

    Transact-SQL.rar_Transact-SQL chm

    8. **窗口函数**:如`RANK()`, `ROW_NUMBER()`, `LAG()` 和 `LEAD()`,提供在结果集中进行排序、分组和计算的高级功能。 9. **聚合函数**:如`SUM()`, `AVG()`, `MAX()`, `MIN()`, `COUNT()`等,用于对一组值进行...

    transact-sql权威指南(pdf)

    3. **聚合函数与窗口函数**:讲解了SUM、AVG、COUNT、MAX和MIN等聚合函数的用法,以及ROW_NUMBER、RANK、DENSE_RANK、LEAD和LAG等窗口函数的应用,这些在数据分析和报表制作中非常关键。 4. **存储过程和函数**:...

    官方Transact-SQL中文帮助大全

    11. **窗口函数**:例如RANK()、ROW_NUMBER()和LEAD(),在结果集中提供行级的计算和分析。 12. **子查询**:嵌套在其他查询中的查询,可以用于复杂的数据比较和过滤。 13. **联接类型**:包括内连接(INNER JOIN)...

    Transact-Sql 语言参考大全

    - 窗口函数:如ROW_NUMBER(), RANK(), DENSE_RANK(), LAG(), LEAD()等,用于处理行间的相对位置和计算。 3. **存储过程**: - 定义和调用存储过程:封装一组SQL语句,提高代码复用性和安全性。 - 输入参数和输出...

    Transact-SQL.rar_t-sql

    - 在结果集中执行计算,如RANK、ROW_NUMBER、LAG、LEAD等,用于排序和分组后的计算。 这些是T-SQL的基础和核心概念,实际应用中还有许多高级特性和技巧。如果“Transact-SQL.exe”是可执行文件,可能包含交互式...

    SQL Server 2005 Beta 2 Transact-SQL 增强功能

    SQL Server 2005引入了四个新的排序函数:ROW_NUMBER、RANK、DENSE_RANK和NTILE。这些函数使得对数据的分析和排序更加灵活。例如,ROW_NUMBER为每一行分配一个唯一的整数,RANK和DENSE_RANK则根据排序条件分配排名...

    Transact-SQL全

    8. **窗口函数**:如ROW_NUMBER、RANK、DENSE_RANK等,提供在结果集中进行排名和计算滑动窗口的能力。 9. **JOIN操作**:通过INNER JOIN、LEFT JOIN、RIGHT JOIN和FULL JOIN,可以将多个表的数据结合在一起。 10. ...

    Writing Queries Using Microsoft SQL Server 2008 Transact-SQL

    - 窗口函数:介绍窗口函数(如RANK()、ROW_NUMBER())的使用方法。 - CTE(公用表表达式):解释CTE的作用,以及如何使用CTE简化复杂的查询。 - 分区:展示如何使用分区来优化大型数据集的查询性能。 通过完成本...

    T-SQL示例大全.rar_sql_t-sql_windows sql

    《T-SQL示例大全》是一个综合性的资源集合,涵盖了SQL语言中的Transact-SQL(T-SQL)的大量实例,适用于在Windows环境下使用SQL Server数据库管理系统进行开发和管理的人员。T-SQL是Microsoft SQL Server所扩展的...

    TRANSACT-SQL编程语言参考

    1. **窗口函数**:如RANK()、ROW_NUMBER()和LEAD(),用于在结果集中计算排名、差异等。 2. **JOIN操作**:如INNER JOIN、LEFT JOIN、RIGHT JOIN和FULL JOIN,用于合并多个表的数据。 3. **子查询**:嵌套在其他查询...

    Transact-SQL语句

    - **窗口函数**(如`ROW_NUMBER()`、`RANK()`、`DENSE_RANK()`等)用于对数据进行行级计算。 - **CASE语句**允许根据条件返回不同值。 - **CTE(公共表表达式)**提供临时的结果集,可用于复杂的查询结构。 以上...

    ROW_NUMBER SQL Server 2005的LIMIT功能实现(ROW_NUMBER()排序函数)

    语法: ROW_NUMBER() OVER([ ] ) 备注: ORDER BY子句可确定在特定分区中为行分配唯一ROW_...有关详细信息,请参阅ORDER BY子句(Transact-SQL)。 返回类型: bigint 类似于MySQL的LIMIT功能语法实例: 代码如下: SELECT

    SQL Server 2012 Transact-SQL DML Reference

    ### SQL Server 2012 Transact-SQL DML 参考手册知识点解析 #### 数据操作语言(Data Manipulation Language, DML)简介 数据操作语言(DML)是一种用于检索和处理 SQL Server 2012 中数据的词汇。通过使用这些语句...

    Inside Microsoft SQL Server 2008 T-SQL Programming

    2. **高级查询**:学习使用子查询、联接(INNER JOIN、LEFT JOIN、RIGHT JOIN、FULL JOIN)、集合操作(UNION、INTERSECT、EXCEPT)以及窗口函数(ROW_NUMBER、RANK、DENSE_RANK等)进行复杂的数据检索。 3. **数据...

    Transact-SQL

    8. **窗口函数**:如`RANK`, `DENSE_RANK`, `ROW_NUMBER`, `LEAD`, `LAG`等,提供在数据集上进行行级别的计算。 ### 三、T-SQL高级特性 1. **JOIN操作**:支持多种类型的JOIN,如INNER JOIN, LEFT JOIN, RIGHT ...

    sql server 2012 T-SQl基础教程 源码和示例数据库

    4. **Chapter 07 - Beyond the Fundamentals of Querying**:这个章节扩展了基础查询知识,探讨了窗口函数、排名函数(ROW_NUMBER(), RANK(), DENSE_RANK())、以及行数和百分位数函数等高级查询技巧。 5. **...

    Inside Microsoft SQL Server2005_ T-SQL Programming.rar

    《Inside Microsoft SQL Server 2005: T-SQL Programming》是针对微软SQL Server 2005数据库管理系统中T-SQL(Transact-SQL)编程的一本详细指南。这本书深入探讨了SQL Server 2005的核心组件,特别是T-SQL在数据...

    Microsoft SQL Server 2008技术内幕:T-SQL查询_源代码及附录.zip

    SQL Server 2008引入了窗口函数,如RANK()、ROW_NUMBER()、LAG()和LEAD(),这些函数允许在数据集的行之间进行计算,而不局限于单行或固定的行集。 5. **存储过程和触发器**: T-SQL允许创建存储过程,这是一种预...

    T-SQL性能调优秘笈 基于SQL Server 2012窗口函数_PDF电子书

    - `ROW_NUMBER()`:为每一行分配一个唯一的行号。 - `RANK()`:基于指定列的值进行排序并分配一个排名,相同值的行将获得相同的排名。 - `DENSE_RANK()`:类似于`RANK()`,但是不会出现排名跳过的情况。 - `LAG...

    Microsoft SQL Server 2005技术内幕:T-SQL查询的源代码

    5. **窗口函数**:如RANK、ROW_NUMBER、LEAD和LAG,允许在结果集的行之间进行计算,提供了更灵活的分组和排序功能。 6. **存储过程**:预编译的T-SQL代码块,可以封装复杂的业务逻辑并重复使用,提高性能和代码的可...

Global site tag (gtag.js) - Google Analytics