아래와 같이 써도 정답이 되는지 궁금합니다.
문제6)
SELECT 결제.학번, 학생정보.이름, 결제.결제여부
FROM 결제, 학생정보
WHERE 결재.학번 IN(SELECT 학번 FROM 신청정보 WHERE 신청과목 = 'OPENGL');
문제7)
SELECT 학생정보.이름, 학생정보.전공, 신청정보.신청과목
FROM 학생정보, 신청정보
WHERE 학생정보.학번 IN(SELECT 학번 FROM 신청정보 WHERE 신청과목='JAVA');
-----------------
그리고 문제 6 정답에서
SELECT 학생정보.학번, 이름, 결제.결제여부
이런식으로 테이블이 다르니 테이블명 써줘야 하는거 아닌지 궁금합니다.
문제 7 정답에서..
GROUP BY 학생정보.이름, 학생정보.전공, 신청정보.신청과목
HAVING 학생정보.전공 = '컴퓨터공학';
과 같이 테이블 명 써줘야 되는거 아닌가요??
안녕하세요.
1)
문제6번을 질문주신 것처럼 적용하면
신청정보 테이블에서 추출된 학번이 결제 테이블의 학번에만 영향으로 주므로
결제 테이블과 학생정보 테이블의 조인에 의해
학생정보 테이블의 정보가 모두 추출됩니다.
결과적으로 아래 결과와 같이 42개의 레코드가 추출됩니다.
2)
문제7번을 질문처럼 적용하면 아래의 결과와 같이 출력됩니다.
3)
속성명을 기술할 때 속성명 앞에 테이블명을 기술하는 것이 원칙이나
공통된 속성이 아니라 특정 테이블에만 존재하는 속성의 경우 테이블명을 생략하고 속성명만 기술할 수 있습니다.
오늘도 즐거운 하루 되세요.
-
*2018-06-08 10:15:46
안녕하세요.
1)
문제6번을 질문주신 것처럼 적용하면
신청정보 테이블에서 추출된 학번이 결제 테이블의 학번에만 영향으로 주므로
결제 테이블과 학생정보 테이블의 조인에 의해
학생정보 테이블의 정보가 모두 추출됩니다.
결과적으로 아래 결과와 같이 42개의 레코드가 추출됩니다.
2)
문제7번을 질문처럼 적용하면 아래의 결과와 같이 출력됩니다.
3)
속성명을 기술할 때 속성명 앞에 테이블명을 기술하는 것이 원칙이나
공통된 속성이 아니라 특정 테이블에만 존재하는 속성의 경우 테이블명을 생략하고 속성명만 기술할 수 있습니다.
오늘도 즐거운 하루 되세요.