试图在MySQL中对变量使用limit
我正在尝试将这段代码与一个变量一起在MYSQL中使用LIMIT。当我使用一个简单的数字作为限制时,它工作得很好,但当我使用一个变量时,它就不工作了试图在MySQL中对变量使用limit,mysql,Mysql,我正在尝试将这段代码与一个变量一起在MYSQL中使用LIMIT。当我使用一个简单的数字作为限制时,它工作得很好,但当我使用一个变量时,它就不工作了 SET @increment:=9; SET @number:=1; SET @end:=10*@number; SET @start:=@end-@increment; SELECT name, detail FROM tab1 LIMIT @start, @end; 当我使用以下代码(无变量)时,它工作正常: SELECT name, det
SET @increment:=9;
SET @number:=1;
SET @end:=10*@number;
SET @start:=@end-@increment;
SELECT name, detail FROM tab1 LIMIT @start, @end;
当我使用以下代码(无变量)时,它工作正常:
SELECT name, detail FROM tab1 LIMIT 0,10;
值必须是常量 根据规范: LIMIT子句可用于约束SELECT语句返回的行数。LIMIT接受一个或两个数值参数,它们必须都是非负整数常量
我是这样使用的。也许对你有帮助
SET @increment:=4;
SET @number:=1;
SET @end:=5*@number;
SET @start:=@end-@increment;
PREPARE stmt FROM 'SELECT @i := total, user FROM logintable LIMIT ?,?';
EXECUTE stmt USING @start, @end;
SELECT @i AS result;
那么如何通过variable从数据库中获取特定记录这应该是公认的答案,因为这是实现它的唯一方法。