sqlserver中的分页sql语句,不同于mysql中的limit,相当于top+top

方法1:适用于 SQL Server 2000/2005

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

方法2:适用于 SQL Server 2000/2005

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

方法3:适用于 SQL Server 2005

SELECT TOP 页大小 * FROM         (        SELECT ROW_NUMBER() OVER (ORDER BY id) AS RowNumber,* FROM table1        ) AWHERE RowNumber > 页大小*(页数-1)
时间: 2024-10-10 00:48:13

sqlserver中的分页sql语句,不同于mysql中的limit,相当于top+top的相关文章

SqlServer教程:经典SQL语句集锦

SQL分类: DDL-数据定义语言(CREATE,ALTER,DROP,DECLARE) DML-数据操纵语言(SELECT,DELETE,UPDATE,INSERT) DCL-数据控制语言(GRANT,REVOKE,COMMIT,ROLLBACK) 首先,简要介绍基础语句: 1.说明:创建数据库CREATE DATABASE database-name 2.说明:删除数据库drop database dbname3.说明:备份sql server --- 创建 备份数据的 deviceUSE

机房收费系统中遇到的SQL语句问题

个人版机房收费系统正在进行中,遇到了几个有关SQL语句的问题. 1.sum函数的使用: 在结账部分,要求出某个表中某一列的和.在第一次机房系统中,我不知道sum函数的存在,很傻很天真地用循环一个一个往上加.下面以求所有卡中余额的和来说说sum函数怎么使,SQL语句为:select sum(cash)from T_Card.这个格式不是固定的,可以根据需求更改,比如求多列的和:select sum(列名1),sum(列名2)...from [表名] where....查询出来的结果只有一行,如果只

SQL*PLUS中批量执行SQL语句

SQL*PLUS中批量执行SQL语句 今天由于工作的需要,要在CMD中批量执行大量的SQL语句,对于Oracle学习还处在入门阶段的我,只能硬着头皮到处去寻找资料(主要是网络资料,也包括自己的电子书),最后将所有的SQL语句一次性的执行完成. 首先,将要执行的所有的SQL语句,全部写入某个sql文件当中.例如f:\test.sql; 然后,通过通过sqlplus连接到数据库:如: SQL> sqlplus test/[email protected]; 再执行如下命令: SQL> @f:\te

查询EBS中LOV的SQL语句

帮助->关于 会话 SID : 507 DECLARE  l_sid NUMBER := :SID;BEGIN  FOR cur_sql IN (SELECT sql_text                    FROM v$sqltext_with_newlines t                   WHERE t.address IN (SELECT s.prev_sql_addr                                         FROM v$ses

Mybatis中如何在SQL语句表名中使用参数

insert into prefix_${table_name} (a, b, c) values (#{a}, #{b}, #{c}) ${} 表示直接使用字面量(literal value) #{} 表示这个是个参数 如果 table_name 是 "ABC" 则 ${table_name} 是 ABC #{table_name} 是 "ABC" Mybatis中如何在SQL语句表名中使用参数,布布扣,bubuko.com

存储过程中执行动态Sql语句

存储过程中执行动态Sql语句 MSSQL为我们提供了两种动态执行SQL语句的命令,分别是EXEC和sp_executesql;通常,sp_executesql则更具有优势,它提供了输入输出接口,而EXEC没有.还有一个最大的好处就是利用sp_executesql,能够重用执行计划,这就大大提供了执行性能,还可以编写更安全的代码.EXEC在某些情况下会更灵活.除非您有令人信服的理由使用EXEC,否侧尽量使用sp_executesql. 1.EXEC的使用 EXEC命令有两种用法,一种是执行一个存储

grails中直接使用SQL语句

在grails中直接使用SQL语句进行查询,可以直接获取一个新连接,也可以使用默认的数据源 查询代码:       ApplicationContext ctx = (ApplicationContext) ApplicationHolder.getApplication().getMainContext()       def dataSource = ctx.getBean('dataSource')       def sql = new Sql(dataSource)       Str

嵌套SQL语句訪问DB2中SQLCA的调用技巧

在IBM的关系型数据库产品DB2中,使用SQL Communication Area(SQLCA)将程序中嵌套的SQL语句执行情况返回给程序. 在程序中有针对性地对SQLCA实施调用,可对程序中各类SQL语句的执行结果实施控制,从而避免程序的意外终止.同一时候,也能够提高执行效率,减小系统开销和处理时间.本文将对此作一简要介绍. SQLCA的结构 SQLCA的结构定义例如以下: struc sqlca {        unsigned char     sqlcaid[8]; long    

SQL Server中常用的SQL语句(转):

SQL Server中常用的SQL语句 转自:http://www.cnblogs.com/rainman/archive/2013/05/04/3060428.html 1.概述 名词 笛卡尔积.主键.外键 数据完整性 实体完整性:主属性不能为空值,例如选课表中学号和课程号不能为空 参照完整性:表中的外键取值为空或参照表中的主键 用户定义完整性:取值范围或非空限制,例如:性别(男女),年龄(0-130) 表连接 自然连接:与等值连接(a.id=b.id)相比,连接后的表只有一列id,而不是两列