Skip to content

适用虚谷数据库版本

v12.9



适用虚谷数据库版本

v12.9


ROW_NUMBER

📄字数 472
👁️阅读量 加载中...

功能描述

1开始为结果集中的每一行分配一个唯一的数字值。

语法格式

sql
ROW_NUMBER() OVER ([analytic_clause])

输入参数

  • analytic_clause:可选的分析子句,支持分组子句,排序子句以及范围子句,详情见analytic_clause

输出结果

输出结果为INTEGER类型。

示例

SQL
-- 创建示例表
SQL> CREATE TABLE employees (
         id INT PRIMARY KEY,
         name VARCHAR(50),
         hire_date DATE
     );

-- 插入数据
SQL> INSERT INTO employees (id, name, hire_date) VALUES
     (1, 'Alice', '2023-01-15'),
     (2, 'Bob', '2022-12-01'),
     (3, 'Charlie', '2023-03-10');

-- 使用 ROW_NUMBER() 分配序号
SQL> SELECT
         id,
         name,
         hire_date,
         ROW_NUMBER() OVER (ORDER BY hire_date ASC) AS row_num  -- 按入职日期升序编号
     FROM employees;

+----+---------+-------------+---------+
| ID |  NAME   |  HIRE_DATE  | ROW_NUM |
+----+---------+-------------+---------+
| 2  | Bob     | 2022-12-01  | 1       |
| 1  | Alice   | 2023-01-15  | 2       |
| 3  | Charlie | 2023-03-10  | 3       |
+----+---------+-------------+---------+