SELECT * FROM user LIMIT (SELECT group_limit FROM groups WHERE groupid = 7471);
答案 0 :(得分:8)
这来自MySQL Database Knowledge base:
LIMIT子句可用于约束SELECT语句返回的行数。 LIMIT需要一个或两个数字参数,它们都必须是非负整数常量(使用预准备语句时除外)。
要使查询正常工作,您需要将其编写为预处理语句,然后执行该操作。
SET @a = (SELECT group_limit FROM groups WHERE groupid = 7471);
PREPARE STMT FROM 'SELECT * FROM user LIMIT ?';
EXECUTE STMT USING @a;