admin

对于SQL 2000消除ROW_NUMBER()

sql

我必须迁移一个sql才能在Microsoft SQL Server
2000上工作。不幸的是,当前的sql使用了该版本尚不支持的功能ROW_NUMBER()。因此,我必须找到类似的东西。

在我的SQL下方(我使用*而不是列出所有列)

SELECT [Id], ROW_NUMBER() OVER (ORDER BY InstallmentNumber, ID ASC) AS ROWID
FROM [ARAS].[ARAS].[Movement]

阅读 263

收藏
2021-06-07

共1个答案

admin

使用带有标识列的临时表来模拟ROW_NUMBER可能是您最好的选择:

CREATE TABLE #tmpRowNum (
    ROWID INT IDENTITY(1,1),
    ID INT
)

INSERT INTO #tmpRowNum
    (ID)
    SELECT ID
        FROM [ARAS].[ARAS].[Movement]
        ORDER BY InstallmentNumber, ID
2021-06-07