在我的脑海中只是一个想法,但是不可能在MySQL中创建一个可以修改查询中的LIMIT
的函数
该子句将是一个简单的计算函数,可根据pageno * perpage
计算出偏移量实施例
SELECT * FROM items PAGE(4,20)
这与
相同SELECT * FROM items LIMIT 100,20
我之前从未创建任何程序,因此下面的内容会出错......
CREATE PROCEDURE (int pagno, int limit)
BEGIN
ofsset = roundup(pageno * limit)
END
但是在该查询中实际设置了查询的限制和偏移量?
答案 0 :(得分:0)
drop procedure if exists foo;
delimiter #
create procedure foo
(
in p_limit int unsigned
)
proc_main:begin
set SQL_SELECT_LIMIT = p_limit;
select * from <table>...
set SQL_SELECT_LIMIT = DEFAULT;
end proc_main #
delimiter ;
call foo(64);