Oracle
 sql >> Base de Dados >  >> RDS >> Oracle

Obtendo a soma de várias colunas de duas tabelas


Você pode unir suas tabelas antes do grupo por (isso é no Oracle, a propósito):
SELECT t.month_ref, SUM(t.amount1), SUM(t.amount2)
  FROM (SELECT month_ref, amount1, amount2
          FROM T_FOO
         WHERE seller = XXX
         UNION ALL
        SELECT month_ref, amount1, amount2
          FROM T_BAR
         WHERE seller = XXX
         ) t
 GROUP BY t.month_ref

Você também pode unir as tabelas com o campo vendedor e filtrar por ele posteriormente (caso precise de uma lógica mais avançada):
 SELECT t.month_ref, SUM(t.amount1), SUM(t.amount2)
   FROM (SELECT month_ref, amount1, amount2, seller
           FROM T_FOO
          UNION ALL
         SELECT month_ref, amount1, amount2, seller
           FROM T_BAR) t
  where t.seller = XXX
  GROUP BY t.month_ref