首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用mysql存储过程创建分页

问使用mysql存储过程创建分页
EN

Stack Overflow用户
提问于 2013-11-18 16:54:17
回答 1查看 2.3K关注 0票数 1

我正在尝试使用存储过程创建分页,

当我尝试将1作为参数传递时,会得到0到14的记录。

当我传递2作为参数时,它给出0-30,当我传递2作为参数时,我想要15-30

代码语言:javascript
复制
create PROCEDURE abc(pageno INT)
BEGIN  
DECLARE page_no int;
DECLARE rstarts int;
DECLARE rends int; 
DECLARE userPage int;

set @userPage = pageno;

PREPARE STMT FROM 
" SELECT * FROM primaryinfo LIMIT ?,? "; 
SET @START =(@userPage - 1) * 15; 
SET @LIMIT = @userPage * 15; 
EXECUTE STMT USING @START, @LIMIT;
DEALLOCATE PREPARE STMT;
END

或者有没有其他有效的解决方案..提前谢谢你

EN

回答 1

Stack Overflow用户

发布于 2014-02-17 17:14:48

不带语句的分页:

代码语言:javascript
复制
create PROCEDURE test(
  IN first_rec integer,
  IN rec_count integer
)
BEGIN
  -- return --
  SET @rownum=0;
  SELECT * FROM (
    SELECT
    user.*, @rownum:=@rownum+1 AS rn FROM user
  ) t WHERE rn>=first_rec and rn<first_rec+rec_count;
END;;
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20043594

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档