programing

두 표의 데이터를 하나의 보기로 변환

powerit 2023. 7. 2. 21:04
반응형

두 표의 데이터를 하나의 보기로 변환

필드가 동일한 두 테이블의 데이터를 하나의 보기로 가져올 수 있습니까?기본적으로 보기는 데이터를 하나의 테이블처럼 봅니다.

네, 연합을 사용합니다.

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

...열 수가 같고 각 위치에서 데이터 유형이 일치해야 합니다.

..JOIN을 사용하는 것이 좋습니다.

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

그러나 뷰에 따라 경고하고 싶습니다. 구체화되지 않았다면 SQL 문만 준비되었을 뿐입니다.성능상의 이점은 없으며 다른 뷰를 기반으로 뷰를 작성할 경우 성능에 부정적인 영향을 미칠 수 있습니다.또한 보기는 취약합니다. 보기는 변경될 수 있으며, 문제가 있을 경우 지원 보기를 사용해야 알 수 있습니다.

create or replace view view_name as
select * from table_1
union all select * from table_2

참고: 보기의 열은 보기가 생성될 때 설정됩니다.뷰 생성 후 table_1 및 table_2에 열을 추가하면 view_name에 표시되지 않습니다.새 열을 표시하려면 위의 DDL을 다시 실행해야 합니다.

중복 행을 단일 행으로 축소하려면 다음 작업을 수행합니다(서버에 더 많은 작업이 필요할 수 있음).

create or replace view view_name as
select * from table_1
union select * from table_2

일반적으로 사용하기에는 좋지 않은 형태입니다.*선택 목록에서, 그러나 보기를 사용하는 쿼리가 필요한 것만 선택한다고 가정하면, 모든 열 이름을 명시적으로 지정하는 대신 여기서 사용할 것입니다. (특히 table_1과 table_2가 변경될 때 열 이름을 추가할 필요가 없기 때문입니다.)

언급URL : https://stackoverflow.com/questions/3267360/data-from-two-tables-into-one-view

반응형