MySQL LIMT 是一个子查询?
MySQL LIMT is a subquery?
我想使用 select 语句来控制另一个 select 查询的限制,我无法让它工作,我在下面有。大括号returns中的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;
我想使用 select 语句来控制另一个 select 查询的限制,我无法让它工作,我在下面有。大括号returns中的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;