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

Datos de dos tablas en una vista

Sí, usando UNION -

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

...requiere que haya el mismo número de columnas y que los tipos de datos coincidan en cada posición.

..preferiblemente, usando un JOIN:

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

Pero quiero advertir contra la dependencia de las vistas:si no se materializan, solo son declaraciones SQL preparadas. No hay beneficio de rendimiento y puede afectar negativamente el rendimiento si crea una vista basada en otra. Además, las vistas son frágiles:pueden cambiar y no sabrá si hay problemas hasta que use una vista compatible.