Sma*_*EGA 5 sql sql-server sql-server-2000
如何使用ROW_NUMBER()不支持该功能的SQL Server 2000在SQL查询中获取行号?
您始终可以尝试将临时表与标识列一起使用
DECLARE @table TABLE(
[id] INT IDENTITY(1,1),
Val VARCHAR(10)
)
DECLARE @TableFrom TABLE(
Val VARCHAR(10)
)
INSERT INTO @TableFrom (Val) SELECT 'A'
INSERT INTO @TableFrom (Val) SELECT 'B'
INSERT INTO @TableFrom (Val) SELECT 'C'
INSERT INTO @TableFrom (Val) SELECT 'D'
INSERT INTO @table (Val) SELECT * FROM @TableFrom ORDER BY Val DESC
SELECT * FROM @table
Run Code Online (Sandbox Code Playgroud)
我在Sql Server 2000中看到的一些最好的分页使用了这种模式
DECLARE @PageStart INT,
@PageEnd INT
SELECT @PageStart = 51,
@PageEnd = 100
SELECT <TABLE>.*
FROM (
SELECT TOP (@PageStart - 1)
<ID>
FROM (
SELECT TOP (@PageEnd)
<ID>
FROM TABLE
ORDER BY <ID> ASC
) SUB
ORDER BY SUB.<ID> DESC
) SUB INNER JOIN
<TABLE> ON SUB.<ID> = <TABLE>.<ID>
ORDER BY SUB.<ID>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
8899 次 |
| 最近记录: |