我想使用一个选择语句来控制另一个选择查询的限制,我无法让它工作,我在下面。大括号中的 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)
您不能在 中编写子查询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] 删除。
我来说两句