MySQL - 인라인 뷰(Inline View) 사용법

     

     

    이번 포스팅에서는 인라인 뷰(Inline View)에 대해서 알아보도록 하겠습니다.

     

     

     

     

     

       관련글

     

     

     

     

     

    https://server-talk.tistory.com/521 - MySQL - 서브쿼리(Subquery)란?

     

     

    https://server-talk.tistory.com/522 - MySQL - 스칼라 서브쿼리(Scalar Subquery) 사용법

     

     

     

     

     

       MySQL - 조회 테이블 데이터 생성 및 구조확인

     

     

     

     

     

    1. 조회할 테이블 명세서 - 회원테이블, 회사테이블

     

     

     

     

     

    2. 조회할 테이블 생성 - 회원 테이블

     

    CREATE TABLE member_table (
     seq            INT NOT NULL AUTO_INCREMENT,
     company_code   VARCHAR(100),
     mb_id          VARCHAR(20),
     mb_pw          VARCHAR(20),
     address        VARCHAR(50),
     mb_tell        VARCHAR(50),  
      PRIMARY KEY(seq)
    ) ENGINE=innodb CHARSET=utf8;

     

     

     

     

    3. 조회할 테이블 생성 - 회사 테이블

     

    CREATE TABLE company_table (
     seq                INT NOT NULL AUTO_INCREMENT,
     company_code       VARCHAR(100),
     korea_name         VARCHAR(100),
     company_name       VARCHAR(100),
     company_address    VARCHAR(20),
      PRIMARY KEY(seq)
    ) ENGINE=innodb CHARSET=utf8;

     

     

     

     

    4. 데이터 삽입 - 회원 테이블

     

     

    INSERT INTO member_table (company_code, mb_id, mb_pw, address, mb_tell) VALUE('035720', 'build', 'build1',  '서울특별시 강남구 도곡동', '010-1234-1234');
    INSERT INTO member_table (company_code, mb_id, mb_pw, address, mb_tell) VALUE('068270', 'talk', 'server2', '경기도 성남시 분당구', '010-2345-2345');
    INSERT INTO member_table (company_code, mb_id, mb_pw, address, mb_tell) VALUE('035420', 'story', 'server3', '인천광역시 부평구 부평동', '010-3456-3456');

     

     

     

     

    5. 데이터 삽입 - 회사 테이블

     

    INSERT INTO company_table (company_code, korea_name, company_name, company_address) VALUE('035420', '네이버', 'NAVER', '경기도 성남시 분당구 불정로 6');
    INSERT INTO company_table (company_code, korea_name, company_name, company_address) VALUE('035720', '카카오', 'KAKAO', '제주특별자치도 제주시 첨단로 242');
    INSERT INTO company_table (company_code, korea_name, company_name, company_address) VALUE('068270', '셀트리온', 'CELLTRION', '인천광역시 연수구 아카데미로 23');

     

     

     

     

     

       MySQL - 인라인 뷰(Inline View) 사용시 주의사항

     

     

     

     

     

    1. 인라인 뷰(Inline View) 서브쿼리는 SELECT 문으로만 작성이 가능합니다

     


    2. 인라인 뷰(Inline View) 서브쿼리는 ( ) - "괄호" 안에 작성해야 됩니다.

     

     

    3. 인라인 뷰(Inline View) 서브쿼리에서 조회한 컬럼만 메인쿼리에서 조회가 가능합니다.

     

     

    4. 인라인 뷰(Inline View) 사용지 별칭을 지정해야 됩니다.

     

     

    5. 메인쿼리에서 인라인 뷰(Inline View)의 컬럼을 조회시 별칭을 지정해야 됩니다.

     

     

     

     

     

       MySQL - 인라인 뷰(Inline View) 사용법

     

     

     

     

     

     

    인라인 뷰(Inline View)는 FROM절에서 사용되는 서브쿼리 이며, 서브쿼리에서 조회한 결과를 하나의 테이블처럼 사용하고 싶을때 사용됩니다 그리고 SQL문이 실행될 때 임시적으로 생성되는 동적뷰이며, 테이블에서 조회한 컬럼만 조회가 가능합니다.

     

     

     

     

     

    1. 인라인 뷰(Inline View) 사용법

     

    사용법 : 
            SELECT  [Inline View 별칭].[컬럼명],
                    [Inline View 별칭].[컬럼명],
                    [Inline View 별칭].[컬럼명]
            FROM    [Inline View] AS [별칭]

     

     

     

     

     

    2. 인라인 뷰(Inline View) 예시

     

    select  a.mb_id, 
            a.address  
      from  (select  mb_id, 
                     address 
               from  member_table
             ) AS a

     

    인라인 뷰(Inline View)에서 조회한 컬럼만 조회가 가능하며, 인라인 뷰(Inline View) 작성시 AS 뒤에 별칭을 명시하고 메인 쿼리에 인라인 뷰(Inline View) 서브쿼리에서 별칭을 지정하고 조회해야 됩니다.

     

     

     

     

     

    3. 인라인 뷰(Inline View) 출력결과

     

    +-------+-------------------------------------+
    | mb_id | address                             |
    +-------+-------------------------------------+
    | build | 서울특별시 강남구 도곡동            |
    | talk  | 경기도 성남시 분당구                |
    | story | 인천광역시 부평구 부평동            |
    +-------+-------------------------------------+

     

    Posted by 서버이야기