使用限制的MySQL / ASP分页

时间:2011-09-17 13:54:00

标签: mysql database asp-classic

目前,我正在使用此记录集分页方法: (这个例子已经减少了这个帖子)

Function getnext10(num)
        pageLen = len(num)
        if pageLen = 1 Then
        next10 = 10
        else if pageLen > 1 Then
        pageRem = 10
        pageTen = right(num, 1)
        next10 = num + pageRem - pageTen
        end if
        end if
        getnext10 = next10
End Function

Function getPrev10(num)
        pageLen = Len(num)
        If pageLen = 1 Then
        prev10 = 1
        ElseIf pageLen > 1 Then
        lastNumber = Right(num,1)
        prev10 = num - lastNumber
        End If
        If prev10 = 0 Then
        prev10 = 1
        End If
        getPrev10 = prev10
End Function

使用“Do Until Loop”来获取该页面的正确结果组。

我被建议放弃此方法并开始使用LIMIT分页。我知道如何将这个应用到我的项目中,所以我不是在寻找任何人的代码,我只需要解释为什么我需要开始使用它。

除了在LIMIT版本中使用更少的代码,这将减少我的页面大小(稍微大),为什么更好地使用LIMIT方法?它会改善我的搜索查询性能吗?

将非常感谢有关此主题的任何进一步澄清。

1 个答案:

答案 0 :(得分:1)

是的,使用LIMIT可以改善网页的性能。现在你正在获取不公正的记录只是为了移动到正确的记录,而LIMIT会立即将你带到​​正确的记录。假设你必须翻页100条记录,每页10条记录和用户请求页面10(最后一页)。使用“Do Until Loop”解决方案,您可以获取所有100条记录,但是您可以立即丢弃其中的90条记录,而无需实际使用它们。所以90%的结果集你没有用于任何建设性的东西!使用LIMIT只能获取您要使用的记录,因此您不会浪费任何资源。