MySQL 数据库是无法在limit后面识别运算符
例如:
SELECT * FROM 表名 LIMIT 1+1,5;
像这样运行是不会通过的 ;
解决如下
SET @sql=CONCAT('SELECT * FROM people LIMIT ' ,((1-1)*5),',',5,'');
PREPARE a FROM @sql;
EXECUTE a;
--表名 people
运行结果
由上面推出分页的存储过程
--zking 数据库名
--fengye 存储过程名
DELIMITER $$
CREATE
PROCEDURE `zking`.`fengye`(IN aa INT )
BEGIN
SET @qwe=CONCAT('SELECT * FROM people LIMIT ' ,((aa-1)*5),',',5,'');
PREPARE a FROM @qwe;
EXECUTE a;
END$$
DELIMITER ;
欢迎各路大神指点错误;