Oracle
 sql >> Baza danych >  >> RDS >> Oracle

Konwersja sprzężenia Oracle na sprzężenie Ansi

Byłoby to sprzężenie zewnętrzne, gdyby wszystkie kolumny w t2 miał (+) modyfikator.

To wyglądałoby tak:

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';

Twoja wersja jest jednak sprzężeniem wewnętrznym, ponieważ niektóre kolumny muszą się zgadzać, więc w drugiej tabeli musi być pasujący wiersz.

Tak więc prawdziwy odpowiednik to po prostu:

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';

Oraz (+) nie ma znaczenia.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Oracle Konwertuj wiersze na kolumny

  2. Powolna migracja do chmury

  3. Używasz wielu sterowników Oracle JDBC w jednej aplikacji Java?

  4. Jak obsłużyć kolumnę tabeli nazwaną zarezerwowanym słowem kluczowym Sql?

  5. Użyj aliasu tabeli w innym zapytaniu, aby przejść przez drzewo