zoukankan      html  css  js  c++  java
  • SQL分页小技巧

    1.对于SQL2000和SQL2005实用的分页

    方法一:

    SELECT TOP 页大小 *
    FROM table1
    WHERE id NOT IN
              (
              
    SELECT TOP 页大小*(-1) id FROM table1 ORDER BY id
              )
    ORDER BY id

    方法二:

    SELECT TOP 页大小 *
    FROM table1
    WHERE id >
              (
              
    SELECT ISNULL(MAX(id),0
              FROM 
                    (
                   
    SELECT TOP 页大小*(-1) id FROM table1 ORDER BY id
                    ) 
    A
              )
    ORDER BY id

     

    2.实用与SQL2005

    注解:这个方法不适合用于大量数据后面的分页

    SELECT TOP 页大小 * 
    FROM 
            (
            
    SELECT ROW_NUMBER() OVER (ORDER BY id) AS RowNumber,* FROM table1
            ) A
    WHERE RowNumber > 页大小*(页数-1)

     

    解决办法(参考别人的博客)

      select * from table1 where id in (
    select id from 
    (
    select id, row_number() over (order by id)
     scn 
    from   table1) t
    where scn<100000 and scn>100000-20)

    这样就能取出99980到100000之间的数据,依靠id具有的索引读取出来就很快

     

     

     

  • 相关阅读:
    webpack的基本使用2
    js调用本地exe程序,并获取exe运行结果
    BLE技术简介(转)
    在线编解码转换工具
    json字符转数组
    PPT图标
    在线IP地址与数字互转工具
    C# Combobox
    C# 设置本机日期格式
    sql server删除字段约束
  • 原文地址:https://www.cnblogs.com/yuliantao/p/1844624.html
Copyright © 2011-2022 走看看