SqlServer 序号列的实现方法

时间:2022-08-29 17:17:21

对于 SQL SERVER 2000 及更早的版本,需要使用一个自增列,结合临时表来实现。 

复制代码代码如下:


SELECT [AUTOID] = IDENTITY(int,1,1), * INTO #temp_table FROM 表名; 

 

复制代码代码如下:


SELECT * FROM #temp_table; 


从 SQL SERVER 2005 开始, SQL SERVER 提供了一个 ROW_NUMBER() 函数,大大简化了工作。 

复制代码代码如下:


SELECT *,ROW_NUMBER() OVER (ORDER BY 排序字段) AS [AUTOID] FROM 表名; 


序号字段的别名,可以在后续的条件中使用。