📜  tsql 行号 - SQL (1)

📅  最后修改于: 2023-12-03 15:20:41.150000             🧑  作者: Mango

TSQL 行号 - SQL

在 TSQL 中,经常需要查看某个查询结果中的行号。这可以通过使用 ROW_NUMBER() 函数来实现。

使用 ROW_NUMBER() 函数
SELECT ROW_NUMBER() OVER (ORDER BY column_name ASC) AS row_num, *
FROM table_name;
  • ROW_NUMBER() 函数返回的是每一行的行号,因此 SELECT 中需要包含所有的列。
  • OVER 子句中的 ORDER BY 是可选的,它用于指定行号的顺序。
  • row_num 列是我们新增的一列,它包含了每一行的行号。
示例

以下是一个示例,我们将在一个 customers 表中添加一个行号列,并按照 customer_id 排序:

SELECT ROW_NUMBER() OVER (ORDER BY customer_id) AS row_num, *
FROM customers;

返回结果:

| row_num | customer_id | customer_name | customer_email | | ------- | ----------- | ------------- | -------------- | | 1 | 1 | John Smith | john@example.com | | 2 | 2 | Jane Doe | jane@example.com | | 3 | 3 | Bob Johnson | bob@example.com | | ... | ... | ... | ... |

总结

使用 ROW_NUMBER() 函数可以很方便地为查询结果添加行号,它非常适用于需要对结果进行分页或者排序的场景。