SQL表行号列?

时间:2019-02-18 13:52:48

标签: sql sql-server row

我正在用SQL编写程序,但是每次我在MSSMS中执行该程序时,最左侧都有一列包含行号。我想在同一程序中使用的while语句中调用此列中的行号,但是我不确定如何在代码中引用它。该列称为什么,以便我可以调用它并获取行号?

2 个答案:

答案 0 :(得分:3)

您要引用的列由SQL Server生成,并且实际上不存在于您的结果集中。如果表中存在一个或多个会生成该顺序的列,则可以向ROW_NUMBER添加调用以获取所看到的列。例如:

SELECT *, ROW_NUMBER() OVER (ORDER BY some_col) rn
FROM yourTable
ORDER BY rn;

答案 1 :(得分:0)

您可以使用row_number()添加自己的行号:

select row_number() over (order by <order cols>) as seqnum,
       . . .
from t
order by <order cols>;

这些在数据中,可以在后续处理中引用。