海量数据分页



<%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%> <% '分页SQL语句生成代码 Function GetPageSQL(tblName,fldName,PageSize,PageIndex,OrderType,strWhere) Dim strTemp,strSQL,strOrder '根据排序方式生成相关代码 if OrderType=0 then strTemp=">(select max([" & fldName & "])" strOrder=" order by [" & fldName & "] asc" else strTemp="<(select min([" & fldName & "])" strOrder=" order by [" & fldName & "] desc" end if '若是第1页则无须复杂的语句 if PageIndex=1 then strTemp="" if strWhere<>"" then strTmp = " where " + strWhere end if strSQL = "select top " & PageSize & " * from [" & tblName & "]" & strTmp & strOrder else '若不是第1页,构造SQL语句 strSQL="select top " & PageSize & " * from [" & tblName & "] where [" & fldName & "]" & strTemp & _ " from (select top " & (PageIndex-1)*PageSize & " [" & fldName & "] from [" & tblName & "]" if strWhere<>"" then strSQL=strSQL & " where " & strWhere end if strSQL=strSQL & strOrder & ") as tblTemp)" if strWhere<>"" then strSQL=strSQL & " And " & strWhere end if strSQL=strSQL & strOrder end if GetPageSQL=strSQL '返回SQL语句 End Function response.write(GetPageSQL("message","messageid",10,1,0,"")) %>

posted @ 2006-05-26 01:42  spring3  阅读(127)  评论(0编辑  收藏  举报