sql如何自动增加序号查询语句?

数据表中有一列字段 “avge”,现在要查询出字段并加上序号。如何写sql语句,数据库是sql2000的。

第1个回答  推荐于2019-09-10

现有两种方法解决,供参考:
1、SELECT IDENTITY(INT,1,1) AS 序号, avge FROM Table1
2、SELECT IDENTITY(INT,1,1) AS 序号, avge INTO #temp1 FROM Table1
SELECT * FROM #temp1
DROP TABLE #temp1

给查询出的SQL记录添加序号列,解决方法有以下两种 
第一:

select ROW_NUMBER() OVER (ORDER BY a.字段 ASC) AS XUHAO,a.* from table a1

(table 为表名,字段为表a中的字段名) 
第二:

select RANK()  OVER (ORDER BY a.字段 ASC) AS XUHAO,a.* from table a1

(table 为表名,字段为表a中的字段名)

本回答被网友采纳
第2个回答  2017-12-26

使用SQL标准语法实现
第三种思路是:将结果集中能确定一行数据唯一性的某列或多列组合成标识符,再把结果集中小于等于标识符的记录数合计成一列,从而满足需求。
eg:
SELECT (SELECT COUNT(id) FROM srcTableName AS tbl1 WHERE tbl1.id<=tbl2.id) as seq,field1,field2,...,fieldn 
FROM srcTableName AS tbl2 ORDER BY 1 ;

相似回答