gpt4 book ai didi

mysql - 在 MySQL 的 LIMIT 子句中使用变量

转载 作者:行者123 更新时间:2023-11-29 16:20:40 25 4
gpt4 key购买 nike

我正在编写一个存储过程,其中有一个名为 my_size 的输入参数,它是一个 INTEGER。我希望能够在 SELECT 语句的 LIMIT 子句中使用它。显然这不受支持,有办法解决这个问题吗?

# I want something like:
SELECT * FROM some_table LIMIT my_size;

# Instead of hardcoding a permanent limit:
SELECT * FROM some_table LIMIT 100;

最佳答案

对于那些无法使用 MySQL 5.5.6+ 并且不想编写存储过程的人,还有另一种变体。我们可以使用 ROWNUM 在子查询上添加 where 子句。

SET @limit = 10;
SELECT * FROM (
SELECT instances.*,
@rownum := @rownum + 1 AS rank
FROM instances,
(SELECT @rownum := 0) r
) d WHERE rank < @limit;

关于mysql - 在 MySQL 的 LIMIT 子句中使用变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54523510/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com