책 내용 질문하기
p.99 예제 1
도서
2018 시나공 정보처리기사 실기(산업기사 포함)
페이지
99
조회수
49
작성일
2018-03-29
작성자
탈퇴*원
첨부파일

저번에 질문 드렸던 내용인데 이해가 잘 안되서요.

예제1 첫번째 줄

SELECT 학번, 이름, 학생.학과코드, 학과명

학과.학과코드, 학과명 으로 하는 것과 학생.학과코드, 학과명으로 하는게 똑같다고 하셨는데

학생에는 학과명이 없는데 왜 학생이 와도 되나요?

그리고, 이 부분에 학과가 들어간다면 3번째 줄인

WHERE 학생.학과코드=학과.학과코드 는 어떻게 바꿔야 하나요?

답변
2018-03-29 17:56:27

안녕하세요.

Select문에 작성되는 속성명은

두 테이블에 공통으로 있는 속성은 어느 테이블의 속성인지를 알리기 위해 테이블명.속성명으로 테이블명을 함께 적어야 하지만

한 테이블에만 있는 속성은 속성명만 적으면 됩니다.

예제1의 경우 학번, 이름은 <학생> 테이블에만 있고, 학과명은 <학과> 테이블에만 있으므로

속성명만 적었지만

학과코드의 경우 두 테이블에 모두 있기 때문에 어느 테이블인지 함께 명시해야 합니다.

그런데 조인 조건이 학과코드가 같은 것만 추출하므로

추출된 학과코드는 <학생> 테이블의 학과코드 이든 <학과> 테이블의 학과코드 이든 동일하므로

학생.학과코드 로 해도 되고 학과.학과코드 로 해도 된다는 의미입니다.

또한 3번째 줄은

테이블명이 바뀌어도 조건에는 영향을 주지 않습니다.

오늘도 즐거운 하루 되세요.

  • *
    2018-03-29 17:56:27

    안녕하세요.

    Select문에 작성되는 속성명은

    두 테이블에 공통으로 있는 속성은 어느 테이블의 속성인지를 알리기 위해 테이블명.속성명으로 테이블명을 함께 적어야 하지만

    한 테이블에만 있는 속성은 속성명만 적으면 됩니다.

    예제1의 경우 학번, 이름은 <학생> 테이블에만 있고, 학과명은 <학과> 테이블에만 있으므로

    속성명만 적었지만

    학과코드의 경우 두 테이블에 모두 있기 때문에 어느 테이블인지 함께 명시해야 합니다.

    그런데 조인 조건이 학과코드가 같은 것만 추출하므로

    추출된 학과코드는 <학생> 테이블의 학과코드 이든 <학과> 테이블의 학과코드 이든 동일하므로

    학생.학과코드 로 해도 되고 학과.학과코드 로 해도 된다는 의미입니다.

    또한 3번째 줄은

    테이블명이 바뀌어도 조건에는 영향을 주지 않습니다.

    오늘도 즐거운 하루 되세요.

· 5MB 이하의 zip, 문서, 이미지 파일만 가능합니다.
· 폭언, 욕설, 비방 등은 관리자에 의해 경고없이 삭제됩니다.