9
问题很简单:我想要做:如何在MySQL中SUM()多个子查询行?
SELECT SUM((...一个子查询,返回具有单个int值的多个行...))AS total;
我该怎么做?我得到一个错误,说该子查询返回多行。我需要在一个子查询中。
问题很简单:我想要做:如何在MySQL中SUM()多个子查询行?
SELECT SUM((...一个子查询,返回具有单个int值的多个行...))AS total;
我该怎么做?我得到一个错误,说该子查询返回多行。我需要在一个子查询中。
难道你不能只是在子集内做聚合吗?
SELECT
(SELECT SUM(...) ...) AS total,
...
(未经测试!)
下面是应为你工作的方法:
SELECT SUM(column_alias)
FROM (select ... as column_alias from ...) as table_alias
而且这里有一个具体的虚拟实例说明在行动的办法:
select sum(int_val)
from (
select 1 as int_val
union
select 2 as int_val
union
select 3 as int_val
) as sub;
不是因为我正在使用GROUP BY,所以SUM数量太多。 – Tower 2010-09-25 17:45:31