110,566
社区成员
发帖
与我相关
我的任务
分享
SELECT TOP 20/*这里是显示多少数据*/ *
FROM [Table]
WHERE (
(CASE [IsPeak] WHEN 1 THEN -1 ELSE 1 END) * [Id] + ISNULL([IsHide], 0) * 999999 >= (
SELECT MAX([ArrId]) FROM (
SELECT TOP 1/*这里就是从地几开始*/ (CASE [IsPeak] WHEN 1 THEN -1 ELSE 1 END) * [Id] + ISNULL([IsHide], 0) * 999999 AS [ArrId] FROM [Table]
WHERE [Module] = @Module AND Belong = @Belong AND ISNULL([IsDelete], 0) = @IsDelete
ORDER BY (CASE [IsPeak] WHEN 1 THEN -1 ELSE 1 END) * [Id] + ISNULL([IsHide], 0) * 999999 ASC
) AS [MaxId]
)
)
AND [Module] = @Module AND Belong = @Belong AND ISNULL([IsDelete], 0) = @IsDelete
ORDER BY (CASE [IsPeak] WHEN 1 THEN -1 ELSE 1 END) * [Id] + ISNULL([IsHide], 0) * 999999 ASC