我有这个代码
ALTER PROCEDURE [dbo].[Model_Core_BlogPost_GetLatestPaging] 
@PageSize INT,
@CurrentPage INT
AS
BEGIN
DECLARE @PageStart int, @PageEnd int
SET @PageStart = @CurrentPage * @PageSize
set @PageEnd = @PageStart + @PageSize
;with C as (
SELECT
e.blogpostid, 
e.PreviewText, 
e.Headline, 
e.URLHeadline, 
u.Blogname, 
u.imageurl AS ImageURL, 
e.CommentsCount, 
e.HitsCount, 
e.Created, 
ROW_NUMBER() over (order by e.created desc) as rownum
FROM BlogPosts e
INNER JOIN Users u ON e.BlogUserID = u.UserID
WHERE e.[Status] = 1 and e.Deleteddate is null
)
SELECT *
FROM C
WHERE rownum > @pagestart
AND rownum <= @pageend
END
当@CurrentPage 很大并且我经常在我的应用程序中遇到 sql 超时时,我会遇到问题。
任何解决方案的想法?