社区
MySQL
帖子详情
mysql怎么把存储过程的参数用到limit中
rienzi
2010-05-31 09:36:48
这个存储过程
delimiter // ;
create procedure test(in record_count int)
begin
-- 以下这句出错
select * from friend limit 0,(select record_count);
end;
//
怎么把存储过程的输入参数用到select语句的limit的第二个参数中啊
...全文
233
5
打赏
收藏
mysql怎么把存储过程的参数用到limit中
这个存储过程 delimiter // ; create procedure test(in record_count int) begin -- 以下这句出错 select * from friend limit 0,(select record_count); end; // 怎么把存储过程的输入参数用到select语句的limit的第二个参数中啊
复制链接
扫一扫
分享
举报
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
rienzi
2010-05-31
打赏
举报
回复
太谢谢了
ACMAIN_CHM
2010-05-31
打赏
举报
回复
更多关于PREPARE语法可以参考手册中的说明和例子。
MySQL官方文档
http://dev.mysql.com/doc/refman/5.1/zh/index.html
ACMAIN_CHM
2010-05-31
打赏
举报
回复
LIMIT后的参数无法直接使用变量。你可以使用 prepare来执行一个事先准备好的SQL语句。
set @cnt = 100;
set @sql = concat('select * from friend limit 0,',@cnt);
prepare stmt from @sql;
execute stmt;
DEALLOCATE PREPARE stmt;
wwwwb
2010-05-31
打赏
举报
回复
prepare asql from concat('select * from friend limit 0,',record_count);
execute asql;
MySql
存储过程
中
limit
不能动态
参数
问题的解决
先说两句体外话:好久没在CSDN的blog写东西了,一个原因是自己最近工作比较忙,最主要的原因还是CSDN的blog反映太迟钝,偶尔有想法想记录下来,打开博客主页http://blog.csdn.net/hellolongbin都打不开,要么进度条在下面缓慢的加载,要么干脆就报 已取消到该网页的导航
mysql
存储过程
中
limit
mysql
存储过程
中
limit
1、
mysql
的高版本(5.5),
存储过程
中
的
limit
可以使用变量,如下:select * from student
limit
iStart,iNum; 2、
mysql
的低版本(5.1),
存储过程
中
的
limit
不能使用变量,编译报错,如下:You have an error in your SQL syntax, ...near iStart,iNum 3、怎么解决低版本的问题? 可以使用执行动态sql语句,把整个sql语句传给
存储过程
。静态sql语句,编译的时候
mysql
limit
动态
参数
_
MySQL
中
limit
使用动态
参数
的解决方法(拼接SQL字符串语句来执行SQL)...
官方好像说过
limit
已经在5.6版本上支持了动态
参数
,但是测试时依然还是不行。那么要解决
limit
动态
参数
唯一能做的就是使用字符串SQL拼接的形式,然后再进行执行。一般有以下方式解决:1、
存储过程
拼接2、函数拼接3、视图里拼接4、当前查询的session
中
使用其实上面都是同一个意思,就是使用一个变量存取这个SQL,然后再执行这个变量。样例:set @stmt = concat('select *...
mysql
存储过程
limit
_
mysql
存储过程
limit
SQL分页查询代码SQL Server关于分页 SQL 的资料许多,有的使用
存储过程
,有的使用游标。本人不喜欢使用游标,我觉得它耗资、效率低;使用
存储过程
是个不错的选择,因为
存储过程
是颠末预编译的,执行效率高,也更灵活。先看看单条 SQL 语句的分页 SQL 吧。方法1:适用于 SQL Server 2000...文章nieson2014-01-031412浏览量
Mysql
5.7
存储过程
的学习M...
深入探索
MySQL
——
Limit
查询限制
背景 在我们使用查询语句的时候,经常要返回前几条或者
中
间某几行数据,这个时候怎么办呢? 正如这一题:编写一个 SQL 查询,获取 Employee 表
中
第 n 高的薪水(Salary)。 ±—±-------+ | Id | Salary | ±—±-------+ | 1 | 100 | | 2 | 200 | | 3 | 300 | ±—±-------+ 例如上述 E...
MySQL
57,062
社区成员
56,759
社区内容
发帖
与我相关
我的任务
MySQL
MySQL相关内容讨论专区
复制链接
扫一扫
分享
社区描述
MySQL相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章