7. ‘이광훈 학생’과 같은 학과의 학생들에 대한 평균 몸무게보다 몸무게가 적게 나가는 학생들의
이름, 몸무게, 소속학과이름, 담당교수 이름을 조회하시오.
옳은 답
SQL>
|
SELECT
s.name,s.weight,d.dname,p.name
FROM student s
INNER JOIN department d
ON s.deptno=d.deptno
LEFT OUTER JOIN professor
p ON s.profno=p.profno WHERE weight <
(
SELECT AVG(weight)
FROM student
WHERE deptno =
(SELECT deptno FROM student WHERE name='이광훈')
);
|
SELECT s.name,s.weight,d.dname,p.name
FROM student s
INNER JOIN department d ON s.deptno=d.deptno
LEFT OUTER JOIN professor p ON s.profno=p.profno AND weight <
(
SELECT AVG(weight)
FROM student
WHERE deptno =
(SELECT deptno FROM student WHERE name='이광훈')
);
여기서의
INNER JOIN department d ON s.deptno=d.deptno
LEFT OUTER JOIN professor p ON s.profno=p.profno AND weight <
s.deptno=d.deptno 는 조인조건임(다른 테이블 두 개를 공통된 필드로 묶어준다.는뜻)
9. 학과 이름에 ‘공학’이라는 단어를 포함하고
있는 학과에 재학중인 학생의 학번, 학과이름, 학년, 학생이름을 조회하시오
SQL>
|
SELECT
s.studno,d.dname,s.grade,s.name
FROM student s INNER JOIN
department d
ON s.deptno=d.deptno
WHERE d.dname LIKE ‘%공학%’;
|
댓글 없음:
댓글 쓰기