SQL - Sharing fields between derived tables

62 Views Asked by At

Is it possible to access fields across derived tables?

SELECT * 
FROM   (SELECT ID, COL1A FROM Table1) T1
       JOIN (SELECT ID, COL2A FROM Table2) T2
           ON T1.ID = T2.ID
       JOIN (SELECT ID, (COL3A + T2.COL2A) AS SUM FROM Table3) T3
           ON T1.ID = T3.ID
1

There are 1 best solutions below

0
On BEST ANSWER

You would put the expressions using multiple columns in the SELECT clause:

SELECT t1.ID, t1.COL1A, t2.COL2A, (t3.COL3A + t2.COL2A) as sum
FROM Table1 T1 JOIN
     Table2 T2
     ON T1.ID = T2.ID JOIN
     Table3 T3
     ON T1.ID = T3.ID;

There is no need for derived tables at all.