分页查询的sql 语句(参数1,参数2)?怎么写?
分页查询的sql语句(参数1,参数2)?怎么写?参数1第几页?参数2每一页显示的条数?这个应该怎么写啊?...
分页查询的sql 语句(参数1,参数2)?怎么写?
参数1 第几页?
参数2 每一页显示的条数?
这个应该怎么写啊? 展开
参数1 第几页?
参数2 每一页显示的条数?
这个应该怎么写啊? 展开
3个回答
展开全部
你说的应该是 利用SQL的游标存储过程 来分页的形式
代码如下:
create procedure fenye
@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
不过这个种存储过程分页的方法效率比较差
建议你直接用代码进行分页
或者 利用SELECT TOP分页
代码:
select top 10 * from [order details]
where orderid>all(select top 10 orderid from [order details] order by orderid)
order by orderid
代码如下:
create procedure fenye
@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
不过这个种存储过程分页的方法效率比较差
建议你直接用代码进行分页
或者 利用SELECT TOP分页
代码:
select top 10 * from [order details]
where orderid>all(select top 10 orderid from [order details] order by orderid)
order by orderid
展开全部
http://hi.baidu.com/%CA%B7%C9%CF%D7%EE%C7%BF%B5%C4%B6%B9%BB%A8/blog/item/9183742f8a18dd3f1e308972.html
喜欢可以看看
不知道有用没有
我虽然保存了
但是还没有真正研究过
罪过
阿门~~
喜欢可以看看
不知道有用没有
我虽然保存了
但是还没有真正研究过
罪过
阿门~~
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你会子查询吗?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |