데이터베이스 스키마가 다음과 같을 때 a~g의 질의를 관계 대수식으로 표현할 것
CUSTOMER(CUSTOMER_ID, NAME, ADDRESS, PHONE)
VIDEO(VIDEO_ID, TITLE, GENRE)
RESERVED(CUSTOMER_ID, VIDEO_ID, DATE)
a. 제목이 '반지의 제왕'인 비디오의 장르를 검색하라
b. 예약된 비디오의 ID를 검색하라
c. 예약되지 않은 비디오의 ID를 검색하라
d. 예약된 모든 비디오의 제목을 검색하라
e. 비디오를 예약한 고객의 이름을 검색하라
f. 장르가 '액션'인 비디오를 예약한 고객의 주소를 검색하라
e. 장르가 '다큐멘터리'인 비디오를 모두 예약한 고객의 이름을 검색하라
selection은 S, projection은 P로 나타낸다.
a. P<GENRE>(S<TITLE='반지의 제왕'>(VIDEO))
b. P<VIDEO_ID>(RESERVED)
c. P<VIDEO_ID>(VIDEO) - P<VIDEO_ID>(RESERVED)
d. P<TITLE>(VIDEO * RESERVED)
e. P<NAME>(CUSTOMER * RESERVED)
f. P<ADDRESS>(CUSTOMER * (S<GENRE='액션'>(VIDEO) * RESERVED))
g. P<NAME>(CUSTOMER * P<CUSTOMER_ID, VIDEO_ID>(RESERVED) % P<VIDEO_ID>(S<GENRE='다큐멘터리'>(VIDEO)))
장르별 예약된 비디오의 개수는?
GENRE g COUNT * (RESERVED * VIDEO)
디비전 다른 예시
스키마 내역은 다음과 같다.
학생(학번, 이름)
과목(과목 코드, 교과목명, 개설학과)
수강내역(학번, 과목코드)
컴퓨터공학과에서 개설한 모든 교과목을 수강한 학생의 이름은?
P<이름>(학생 * (수강내역 % P<과목 코드>(S<개설학과='컴퓨터공학과'>(과목))))
'CS > DB' 카테고리의 다른 글
[DB] SQL 사용법(2) (0) | 2022.04.26 |
---|---|
[DB] SQL 사용법(1) (0) | 2022.04.26 |
[DB] 관계 대수 (0) | 2022.04.26 |
[SQL] Table 생성 및 수정, 삭제 (0) | 2022.04.25 |
[SQL] 내포된 SQL (0) | 2022.04.24 |