求一条sql语句!
不知简单还是难! 
 如果要查询数据库前5条数据为: 
 select   top   5   *   from   tablename; 
 但我想查数据库里第6-10条数据要怎样写? 
 有没有好方法? 
 前提数据库有可能是已被删除过数据的!不能用自动编号的ID查询!
------解决方案--------------------如果没有唯一的ID,那就是个难的问题了. 
 不过可以通过游标来读取指定位置范围的数据.
------解决方案--------------------mark
------解决方案--------------------例如如下的就可以:   
 DECLARE @_i INT 
 EXEC SP_CURSOROPEN @_i OUTPUT, @SQL, @scrollopt=1, @ccopt=1, @rowcount= @totalSize OUTPUT 
 EXEC SP_CURSORFETCH @_i, 16, @Index, @Size 
 EXEC SP_CURSORCLOSE @_i 
------解决方案--------------------SELECT TOP 5 * 
 FROM (SELECT TOP 5 * FROM tablename) 
 ORDER BY ID DESC
------解决方案--------------------SELECT TOP 5 * 
 FROM (SELECT TOP 10 * FROM tablename) 
 ORDER BY ID DESC 
------解决方案--------------------上面的方法都行,关键是你要变通的事情 
------解决方案--------------------这不就是分页吗? 
 你到底想实现什么功能??
------解决方案--------------------SELECT TOP 5 * 
 FROM (SELECT TOP 10 * FROM tablename) 
 ORDER BY ID DESC 
------解决方案--------------------数据分页的简单Sql语句 
 1、首先计算出总数据条数n, 
 2、再根据每页条数k,计算出共多少页m。 
 3、设计排序模式如:Order by ID ASC 
 4、第I页,I <m 查询语句:select top k * From (select top k * From (select top (k*I) * from tabe order by ID asc) order by ID desc) order by ID asc 
 5、最后一页 
 select top k * From (select top (n-(m-1)*k) * From table order by ID desc) order by ID asc   
 说明:最外层的select是正确排序 
 详细说明请见:http://www.gisshop.cn/blog/blog.aspx?ID=4
------解决方案--------------------select count(*) from table
------解决方案--------------------SELECT TOP 5 * 
 FROM (SELECT TOP 10 * FROM tablename) 
 ORDER BY ID DESC
------解决方案--------------------SELECT TOP 5 * 
 FROM (SELECT TOP 10 * FROM tablename) 
 ORDER BY ID DESC
------解决方案--------------------如果数据库用mysql的话,可以写 SELECT * FROM tablename limit 5,10;