gpt4 book ai didi

mysql使用in子句将值传递到子查询中

转载 作者:行者123 更新时间:2023-11-30 00:23:45 25 4
gpt4 key购买 nike

为什么这不起作用:

SELECT * 
FROM `group` AS G,
(SELECT sum(`count`)
FROM `counter`
WHERE `id` IN (G.`ids`)) t
WHERE G.id = '1'
LIMIT 1;

我在将 group.ids 值传递给子查询 IN 子句时遇到问题。

group.ids字段的值为:

70,194,458,459,570,470

这可能吗?

我收到此错误:

Unknown column 'G.ids' in 'where clause'

最佳答案

这是一个可以解决您问题的查询,基本上您选择 group 的所有字段只是count来自counterFIND_IN_SET()将匹配c.id与逗号分隔字符串中的任何值。

SELECT G.*, (SELECT sum(`count`) 
FROM `counter` c
WHERE FIND_IN_SET(c.`id`, G.`ids`))
FROM `group` G
WHERE G.id = 1
LIMIT 1

<强> Here有一些关于 FIND_IN_SET 的额外信息你应该知道。

关于mysql使用in子句将值传递到子查询中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23036456/

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