【发布时间】:2014-10-22 21:20:57
【问题描述】:
我想使用逗号分隔的 ID 字符串作为同一查询的输入。
即:
Set @IDs := '';
Select @IDs := CAST(GROUP_CONCAT(DISTINCT CAST(`id` as CHAR)) AS Char) AS 'ID String',
(
Select FORMAT(Sum(`Quantity`),0)
from 'My Table'
Where `ID` IN (@IDs)
) As 'Quantity'
From `My Table`
实际的查询要复杂得多,但我需要实现的是将逗号分隔的 ID 字符串分配给变量,并在带有 IN 子句的子查询中使用该字符串。
上述方法不起作用。如有任何反馈,我将不胜感激。
谢谢!
【问题讨论】:
-
为什么可以将 id 转换为 int 类型而不是 chars?这对我有用。
标签: mysql variables subquery in-subquery