易截截图软件、单文件、免安装、纯绿色、仅160KB

三中SQL 分页方法效率分析

三种SQL分页法效率分析
表中主键必须为标识列,[ID] int IDENTITY (1,1)
1.分页方案一:(利用Not In和SELECT TOP分页)
 语句形式:利用Not In和SELECT TOP分页) 效率中,需要拼接SQL语句
  SELECT TOP 10 * from  TestTable WHERE (Id  NOT  IN (SELECT  TOP  20    id  from        TestTable ORDER BY id )) ORDER BY ID
2.分页方案二:(利用ID大于多少和SELECT TOP分页)
  语句形式:利用ID大于多少和SELECT TOP分页)效率最高,需要拼接SQL语句
  SELECT TOP 10 * from  TestTable WHERE (ID  > (SELECT    MAX(id)    from (SELECT  TOP    20  id from    TestTable ORDER BY id) AST))
3.分页方案三:(利用SQL的游标存储过程分页)
语句形式:利用SQL的游标存储过程分页) 效率最差,但是最为通用
  create procedure SqlPager
@sqlstr nvarchar(4000),                --查询字符串
@currentpage int,                      --第N页
@pagesize int                        --每页行数
as
set nocount on
declare @P1 int,                      --P1是游标的id
  @rowcount int
exec sp_cursoropen @P1 output,@sqlstr,@scrollopt=1,@ccopt=1,@rowcount=@rowcount output
select ceiling(1.0*@rowcount/@pagesize) as 总页数--,@rowcount as 总行数,@currentpage as 当前页
set @currentpage=(@currentpage-1)*@pagesize+1
exec sp_cursorfetch @P1,16,@currentpage,@pagesize
exec sp_cursorclose @P1
set nocount off


相关文档:

PHP连接SQL Server服务器

1.使用PHP的MSSQL,需要加载PHP的MSSQL扩展。具体方法是打开php.ini文件,找到下面一行代码:
  ;extension=php_mssql.dll
去掉行首的分号,然后保存为php.ini文件,即完成PHP的MSSQL扩展的加载。
2.PHP连接SQL Server的必要条件
a.   SQL Server服务器的主机名称。
b.    允许对服务器 ......

PHP存取SQL Server数据库

1.选择操作的数据库
连接到服务器之后,首先需要选择要进行操作的数据库。使用PHP的MSSQL扩展库中的mssql_select_db()函数即可实现连接服务器上的数据库。该函数格式如下:
bool mssql_select_db(string database_name[,resource link_identifier)
该函数各参数意义:
a. 参数 database_name为指定的服务器上可用的数据 ......

将access数据库导入到sql2005的简单方法

首先打开SQL Server Management Studio,建立一个数据库,建立好数据库后选择你的数据库名,右键--任务--导入数据库
打开SQL导入和导出向导--下一步--数据源选择(Microsoft Access)--选择你的ACCESS数据库然后下一步
 
关键的一步在“选择源表和源视图”这里,选择表--编辑映射--选 ......

Oracle中几个关于日期方面的SQL实例

№1:取得当前日期是本月的第几周
SQL> select to_char(sysdate,'YYYYMMDD W HH24:MI:SS') from
dual;

TO_CHAR(SYSDATE,'YY
-------------------
20030327 4 18:16:09

SQL> select to_char(sysdate,'W') from dual;

T
-
4 ......

查询重复记录的SQL语句

SELECT tagid, tagname from uchome_mtag WHERE tagname IN (SELECT tagname from uchome_mtag GROUP BY tagname HAVING (COUNT(tagname) > 1)) ORDER BY tagname ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号