gpt4 book ai didi

带变量的 MySQL 限制

转载 作者:行者123 更新时间:2023-11-30 22:56:45 27 4
gpt4 key购买 nike

我的语法有误:

SET @start := 0;
SELECT (ROUND((count(item))/2)) FROM car INTO @until;

SELECT * FROM car
LIMIT @until OFFSET @start;

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '@until OFFSET @start' at line 1

谁能帮帮我?
谢谢

最佳答案

您不能使用 user-defined LIMIT 子句中的变量 (@until)。

可能的解决方案(this 的变体):

SELECT (ROUND((count(item))/2)) FROM car INTO @until;
SELECT * FROM (
SELECT *,
@rownum := @rownum + 1 AS rank
FROM car,
(SELECT @rownum := 0) r
) d WHERE rank < @until;

唯一的缺点是您丢失了偏移量,但您可以通过调整 WHERE 子句来适应它。否则,您可以使用存储过程。

关于带变量的 MySQL 限制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26033593/

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