SQL2005 高效分页sql语句

1、


代码如下:

select top 10 * from
( select top (@Page * 10) ROW_NUMBER() OVER (order by id) as RowNum, id, username
from Guest where username = 'user'
) as T
where RowNum > ((@Page - 1) * 10)

2、


代码如下:

select * from
( select ROW_NUMBER() OVER(order by id) as RowNum,id,username
from Guest where username = 'user'
) as T
where RowNum between 31 and 60

3、


代码如下:

with T as
(select ROW_NUMBER() OVER(order by id) as RowNum,,id,username
from Guest where username = 'user'
)
select * from T
where RowNum between 31 and 60

(0)

相关推荐

  • SQL2005 高效分页sql语句

    1. 复制代码 代码如下: select top 10 * from ( select top (@Page * 10) ROW_NUMBER() OVER (order by id) as RowNum, id, username from Guest where username = 'user' ) as T where RowNum > ((@Page - 1) * 10) 2. 复制代码 代码如下: select * from ( select ROW_NUMBER() OVER(or

  • springmvc+mybatis 做分页sql 语句实例代码

    废话不多说了,直接给大家贴代码了,具体代码如下所示: <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="s

  • php mssql 分页SQL语句优化 持续影响

    复制代码 代码如下: <?php /** * @Filename :page.sql.class.php * @CreatTime :2009-01-06 * @Descrition :此类为SQL语句处理类. * @UpdateTime-1 :null * @Version :jswweb1.0.0 * @Author :fkedwgwy * @Dome : $sql//SQL语句 $allcount//总记录数 $pagesize//页面显示记录条数 $page//当前页 $sqlc= ne

  • php mssql 数据库分页SQL语句

    我们在编写MIS系统和Web应用程序等系统时,都涉及到与数据库的交互,如果数据库中数据量很大的话,一次检索所有的记录,会占用系统很大的资源,因此我们常常采用,需要多少数据就只从数据库中取多少条记录,即采用分页语句.根据自己使用过的内容,把常见数据库Sql Server,Oracle和MySQL的分页语句,从数据库表中的第M条数据开始取N条记录的语句总结如下: SQL Server 从数据库表中的第M条记录开始取N条记录,利用Top关键字:注意如果Select语句中既有top,又有order by

  • asp.net 分页sql语句(结合aspnetpager)

    数据库操作类: 复制代码 代码如下: /// <summary> /// 取得总数 /// </summary> /// <returns></returns> public string getTotal() { StringBuilder sb = new StringBuilder(); sb.Append("select count(*) total from Test"); DataTable dt = DBHelper.Exe

  • C#拼接SQL语句 用ROW_NUMBER实现的高效分页排序

    如果项目中要用到数据库,铁定要用到分页排序.之前在做数据库查询优化的时候,通宵写了以下代码,来拼接分页排序的SQL语句 复制代码 代码如下: /// <summary> /// 单表(视图)获取分页SQL语句 /// </summary> /// <param name="tableName">表名或视图名</param> /// <param name="key">唯一键</param> //

  • 仿orm自动生成分页SQL分享

    先看看目前这4种数据库的分页写法: 复制代码 代码如下: -- OracleSELECT * FROM (     SELECT ROWNUM RN,  PageTab.* FROM                  (                 SELECT * FROM User_Tables order by id desc                 ) PageTab  where ROWNUM <= 3010             ) Where RN>= 3001 -

  • 详解MySQL的limit用法和分页查询语句的性能分析

    limit用法 在我们使用查询语句的时候,经常要返回前几条或者中间某几行数据,这个时候怎么办呢?不用担心,mysql已经为我们提供了这样一个功能. SELECT * FROM table LIMIT [offset,] rows | rows OFFSET offset LIMIT 子句可以被用于强制 SELECT 语句返回指定的记录数.LIMIT 接受一个或两个数字参数.参数必须是一个整数常量.如果给定两个参数,第一个参数指定第一个返回记录行的偏移量,第二个参数指定返回记录行的最大数目.初始记

  • 在mybatis执行SQL语句之前进行拦击处理实例

    比较适用于在分页时候进行拦截.对分页的SQL语句通过封装处理,处理成不同的分页sql. 实用性比较强. import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import java.util.List; import java.util.Properties; import org.apache.ibatis.e

  • SQL Server 数据库实用SQL语句

    --查看指定表的外键约束 select * from sysobjects where parent_obj in( select id from sysobjects where name='表名') and xtype='PK' --查看所有表 select * from sysobjects where xtype='PK' --删除列中含数字的 delete news where patindex('%[0-9]%',title)>0 --删除删去 字段 title值重复的行,且只保留

随机推荐