voglio ottenere la somma di diverse colonne da 2 tabelle differenti (queste tabelle condividono la stessa struttura).Ottenere la somma di diverse colonne di due tabelle
Se considero solo una tabella, vorrei scrivere questo tipo di query:
SELECT MONTH_REF, SUM(amount1), SUM(amount2)
FROM T_FOO
WHERE seller = XXX
GROUP BY MONTH_REF;
Tuttavia, mi piacerebbe lavorare anche con i dati dalla T_BAR tavolo, e poi avere una query select
che restituiscono le colonne seguenti:
- MONTH_REF
- SUM (T_FOO.amount1) + SUM (T_BAR.amount1)
- SUM (T_FOO.amount2) + SUM (T_BAR.amount2)
tutto raggruppato per il valore di MONTH_REF
.
Si noti che un record per un dato MONTH_REF
può essere trovato in una tabella, ma non nell'altra tabella. In questo caso, vorrei ottenere la somma di T_FOO.amount1 + 0
(o 0 + T_BAR.amount1
).
Come posso scrivere la mia query SQL per ottenere queste informazioni?
Per informazioni, il mio database è Oracle 10g.
Infine preferisco la tua soluzione (la prima) in quanto è più chiara della soluzione Lieven ... – romaintaz
La prima è più efficiente perché stai riducendo il numero di righe prima di quando sposti la clausola 'WHERE' al di fuori del sottotitolo' SELECT'. – JohnB
Grazie ho usato il secondo. –