代码之家  ›  专栏  ›  技术社区  ›  Tower

如何对MySQL中的多个子查询行求和?

  •  9
  • Tower  · 技术社区  · 16 年前

    问题很简单:我想做的是:

    选择总和((。。。一个子查询,返回多行,单个int值…)作为total;

    2 回复  |  直到 16 年前
        1
  •  13
  •   Ike Walker    16 年前

    以下是一种适合您的方法:

    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;
    
        2
  •  1
  •   jensgram    16 年前

    你就不能做个聚合吗 在内部

    SELECT
        (SELECT SUM(...) ...) AS total,
        ...
    

    (未经测试!)