sql >> Databáze >  >> RDS >> Oracle

Data ze dvou tabulek do jednoho pohledu

Ano, pomocí UNION -

CREATE VIEW vw_combined AS
   SELECT * FROM TABLE1
   UNION ALL
   SELECT * FROM TABLE2

...vyžaduje stejný počet sloupců a shodu datových typů na každé pozici.

..nejlépe pomocí JOIN:

CREATE VIEW vw_combined AS
   SELECT * 
    FROM TABLE1 t1
    JOIN TABLE2 t2 ON t2.col = t1.col

Ale chci varovat před závislostí na pohledech - pokud nejsou materializované, jsou to pouze připravené SQL příkazy. Nemá to žádný přínos pro výkon a pokud vytvoříte zobrazení založené na jiném, může to negativně ovlivnit výkon. Pohledy jsou také křehké – mohou se změnit a pokud se vyskytnou problémy, nebudete vědět, dokud nepoužijete podpůrné zobrazení.



  1. Proč MySQL hlásí chybu syntaxe na FULL OUTER JOIN?

  2. soubor nebo operace LOB FILEOPEN selhala při načítání souboru XML do tabulky

  3. Maximální délka znaku UUID

  4. Jak naplnit kalendářní tabulku v Oracle?