如何在查询结果中查找项索引号

Mar*_*que 4 sql sql-server

有一种简单的方法可以在一个简单的SELECT中获取当前项的编号吗?我需要根据计算提供一个列,该计算涉及select中当前索引的编号.我将我的问题简化为极端,但粗略地说,这是一个例子:

SELECT column1 * ITEMINDEX FROM table
Run Code Online (Sandbox Code Playgroud)

我希望我很清楚.我正在使用SQL Server.谢谢.

Qua*_*noi 8

SQL Server 2005+:

SELECT  m.*, ROW_NUMBER() OVER (ORDER BY column) AS rn
FROM    mytable m
Run Code Online (Sandbox Code Playgroud)

SQL没有隐式行号的概念,这就是你需要ORDER BY子句来定义行的顺序的原因.