책 내용 질문하기
93p문제 질문입니다.
도서
2018 시나공 정보처리기사 실기(산업기사 포함)
페이지
93
조회수
726
작성일
2019-02-05
작성자
탈퇴*원
첨부파일
93p문제 2번 답에 대한 질문입니다. WHERE id IN SELECT shopid 에서 id랑 shopid 문제조건에 명시되지 않았는데 왜 답인지 잘 모르겠습니다. 93p문제 3번의 답은 WHERE pid IN( SELECT id 에서 pid랑 id가 왜 답인지 잘 모르겠습니다. 쪽수와 상관 없는 문제 인데 selct뒤에 * 가 붙이는 것의 의미는 무엇입니까?전체 검색하라는 겁니까?
답변
2019-02-07 15:38:31

안녕하세요 길벗수험서 운영팀입니다.

 

select 뒤에 붙은 와일드 카드 *는 모든 필드를 의미합니다.

 

문제에서 <Staff>테이블의 shopid와 <Shop>테이블의 id는 n:1 종속임을 확인하세요.

1. 직원 id가 10인 직원이 담당하는 상점의 id(shopid)를 검색   - <Staff> 테이블에서 구함

2. 1에서 구한 상점의 id로 상점의 이름(<Shop>테이블의 'name')을 검색 - <Shop> 테이블에서 구함

위 사항들을 확인하세요.

 

이제 알아보죠.  1번을 구하기 위해서는 간단합니다. select 문을 써주면 되죠.

select shopid from Staff where id=10;

이렇게 되겠네요.

 

2번을 구하는데 문제에서 '하위 질의'를 사용하라고 하였으니 where ~ in을 사용해야 합니다.

select distinct name from Shop where id in (1번 select문)

이렇게 써주면 되죠.

 

문제를 다시 한 번 읽어보시고 원하는 검색결과가 어떤 것인지 잘 파악해보세요.

(각 테이블의 필드가 어떤 역할을 하는지 짐작할 수 있어야 합니다.)

 

행복한 하루 되세요 :)

  • 관리자
    2019-02-07 15:38:31

    안녕하세요 길벗수험서 운영팀입니다.

     

    select 뒤에 붙은 와일드 카드 *는 모든 필드를 의미합니다.

     

    문제에서 <Staff>테이블의 shopid와 <Shop>테이블의 id는 n:1 종속임을 확인하세요.

    1. 직원 id가 10인 직원이 담당하는 상점의 id(shopid)를 검색   - <Staff> 테이블에서 구함

    2. 1에서 구한 상점의 id로 상점의 이름(<Shop>테이블의 'name')을 검색 - <Shop> 테이블에서 구함

    위 사항들을 확인하세요.

     

    이제 알아보죠.  1번을 구하기 위해서는 간단합니다. select 문을 써주면 되죠.

    select shopid from Staff where id=10;

    이렇게 되겠네요.

     

    2번을 구하는데 문제에서 '하위 질의'를 사용하라고 하였으니 where ~ in을 사용해야 합니다.

    select distinct name from Shop where id in (1번 select문)

    이렇게 써주면 되죠.

     

    문제를 다시 한 번 읽어보시고 원하는 검색결과가 어떤 것인지 잘 파악해보세요.

    (각 테이블의 필드가 어떤 역할을 하는지 짐작할 수 있어야 합니다.)

     

    행복한 하루 되세요 :)

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