gpt4 book ai didi

MySQL 使用带有变量的函数 IN

转载 作者:行者123 更新时间:2023-11-29 13:28:40 24 4
gpt4 key购买 nike

我在 IN 函数中查询带有变量的表时遇到问题。

SELECT 
s.date,
(SELECT
GROUP_CONCAT(value)
FROM value
WHERE id_value
IN(s.ref_values)
) AS vals
FROM stats s
ORDER BY s.date DESC
LIMIT 1

其中s.ref_values'12,22,54,15'。对于第一个数字 (12),我只得到一次返回。

当我直接在 IN(12,22,54,15) 中插入该值时,它会找到所有 4。

所以,在IN中使用变量肯定有问题。我做错了什么?

最佳答案

将您的查询重写为

SELECT 
s.date,
(SELECT
GROUP_CONCAT(value)
FROM value
WHERE id_value
IN(SELECT ref_values FROM stats)
)
AS vals
FROM stats s
ORDER BY s.date DESC
LIMIT 1

看看是否有帮助。

理想情况下,您应该将结果集作为参数传递给 IN

关于MySQL 使用带有变量的函数 IN,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19785920/

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