我正在用SQL编写程序,但是每次我在MSSMS中执行该程序时,最左侧都有一列包含行号。我想在同一程序中使用的while语句中调用此列中的行号,但是我不确定如何在代码中引用它。该列称为什么,以便我可以调用它并获取行号?
答案 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>;
这些在数据中,可以在后续处理中引用。