2권 95페이지 문제 3번에서
정답이
SELECT SUM(psale)
FORM Sale
WHERE pid IN ( ~~);
인데 제대로 설명 좀 부탁드립니다.
왜 갑자기 pid가 들어갔는지 교재를 봐도 이해할수가 없습니다.
안녕하세요 길벗수험서 운영팀입니다.
문제를 보시면 <Sale>과 <Product>는 외래키로 연결되어 있음을 알 수 있습니다.
즉, <Sale>의 pid는 <Product>의 id를 가져와서 사용하는 속성임을 알 수 있죠.
문제에서는 <Product>에서 name이 USB인 상품의 psale의 합계를 구하고자 하네요.
psale은 <Sale>에 존재하지만 name에 해당하는 튜플들을 골라내기 위해서는 연결된 외래키를 이용해주어야 합니다.
간단하게 임의로 테이블을 구성해서 확인해보세요.
이렇게 <Sale> 테이블이 있고,
id / sid / pid / psale
1, a, a-1, 100
2, b, b-1, 200
3, c, a-1, 300
이렇게 <Product> 테이블이 있다고 가정하면
id / name / price
a-1, USB, 10000
b-1, HDMI, 20000
c-1, DVI, 30000
이렇게 구성할 수 있겠네요.
USB인 <product>의 id인 a-1을 먼저 구한다음 <sale> 테이블에서 a-1인 튜플들의 psale의 합계를 구해야 하기 때문에 외래키인 pid를 이용한 것입니다.
행복한 하루되세요 :)
-
관리자2019-10-04 10:55:49
안녕하세요 길벗수험서 운영팀입니다.
문제를 보시면 <Sale>과 <Product>는 외래키로 연결되어 있음을 알 수 있습니다.
즉, <Sale>의 pid는 <Product>의 id를 가져와서 사용하는 속성임을 알 수 있죠.
문제에서는 <Product>에서 name이 USB인 상품의 psale의 합계를 구하고자 하네요.
psale은 <Sale>에 존재하지만 name에 해당하는 튜플들을 골라내기 위해서는 연결된 외래키를 이용해주어야 합니다.
간단하게 임의로 테이블을 구성해서 확인해보세요.
이렇게 <Sale> 테이블이 있고,
id / sid / pid / psale
1, a, a-1, 100
2, b, b-1, 200
3, c, a-1, 300
이렇게 <Product> 테이블이 있다고 가정하면
id / name / price
a-1, USB, 10000
b-1, HDMI, 20000
c-1, DVI, 30000
이렇게 구성할 수 있겠네요.
USB인 <product>의 id인 a-1을 먼저 구한다음 <sale> 테이블에서 a-1인 튜플들의 psale의 합계를 구해야 하기 때문에 외래키인 pid를 이용한 것입니다.
행복한 하루되세요 :)