MySQL LIMT 是子查询?

催化剂

我想使用一个选择语句来控制另一个选择查询的限制,我无法让它工作,我在下面。大括号中的 Select 返回一个 INT。我对 MySQL 较新,所以我不确定我应该使用什么来代替它来工作。

SELECT * 
FROM `tbl_prod` 
WHERE prod_id = 32 
ORDER BY prod_level ASC , prod_date 
LIMIT 
    (SELECT max_count 
    FROM Prod_subscription 
    WHERE prod_id = 32)
D-施

您不能在 中编写子查询LIMIT,但可以使用动态 SQL 来生成预期结果。

SET @num = (
    SELECT max_count 
    FROM Prod_subscription 
    WHERE prod_id = 32);

PREPARE STMT FROM 'SELECT * 
FROM `tbl_prod` 
WHERE prod_id = 32 
ORDER BY prod_level ASC , prod_date 
LIMIT ?';
EXECUTE STMT USING @num;

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章