sql >> Base de Datos >  >> RDS >> Oracle

Conversión de unión Oracle a unión Ansi

Esta sería una unión externa si todas las columnas en t2 tenía el (+) modificador.

Eso se vería así:

Select t1.c1, t2.c2, t1.c3
from t1 left join
     t2 
     on T1.c1 = t2.c1 and T1.c2 = t2.c2 and
        T1.c3 = t2.c3 and T1.c4 = t2.c4
where T1.c1 = '1';

Sin embargo, su versión es una combinación interna, porque algunas de las columnas deben coincidir, por lo que debe haber una fila coincidente en la segunda tabla.

Entonces, el equivalente real es simplemente:

Select t1.c1, t2.c2, t1.c3
from t1 join
     t2 
     on T1.c1 = t2.c1 and T1.c2 = t2.c2 and
        T1.c3 = t2.c3 and T1.c4 = t2.c4
where T1.c1 = '1';

Y el (+) no es relevante.