ASP构造大数据量的分页SQL语句

 1 < %@Language  =   " VBScript "  Codepage  =   " 936 " % >
 2 < %
 3 ' 分页sql语句生成代码
 4 Function  GetPageSql(TblName,FldName,PageSize,PageIndex,OrderType,StrWhere)
 5      Dim  StrTemp,StrSql,StrOrder
 6      ' 根据排序方式生成相关代码
 7      If  OrderType  =   0   Then
 8         StrTemp  =   " > (Select Max([ "   &  FldName  &   " ])"
 9         StrOrder  =   "  Order By [ "   &  FldName  &   " ] Asc"
10      Else
11         StrTemp  =   " < (Select Min([ "   &  FldName  &   " ])"
12         StrOrder  =   "  Order By [ "   &  FldName  &   " ] Desc"
13      End   If
14     
15      ' 若是第1页则无须复杂的语句
16      If  PageIndex  =   1   Then
17         StrTemp  =   " "
18          If  StrWhere  <>   ""   Then
19             Strtmp  =   "  Where  "   &  StrWhere
20          End   If
21         StrSql  =   " Select Top  "   &  PageSize  &   "  * From [ "   &  TblName  &   " ] "   &  Strtmp  &  StrOrder
22      Else          ' 若不是第1页,构造sql语句
23         StrSql  =   " Select Top  "   &  PageSize  &   "  * From [ "   &  TblName  &   " ] Where [ "   &  FldName  &   " ] "   &  StrTemp  &  _
24          "  From (Select Top  "   &  (PageIndex - 1 *  PageSize  &   "  [ "   &  FldName  &   " ] From [ "   &  TblName  &   " ] "  
25          If  StrWhere  <>   ""   Then
26             StrSql  =  StrSql  &   "  Where  "   &  StrWhere
27          End   If
28         StrSql  =  StrSql  &  StrOrder  &   " ) As Tbltemp)"
29          If  StrWhere  <>   ""   Then
30             StrSql  =  StrSql  &   "  And  "   &  StrWhere
31          End   If
32         StrSql  =  StrSql  &  StrOrder
33      End   If
34     GetPageSql  =  StrSql         ' 返回sql语句
35 End Function
36 Response.Write(GetPageSql( " Message " , " MessageID " , 10 , 1 , 0 , "" ))
37 % >
 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值