subQuery
Sub Query
서브 쿼리 (Sub Query)
=> 쿼리문 안에 쿼리문을 실행하는 기법 (SELECT절/ WHERE절/FROM 절 안에 들어가는 쿼리를 통칭하여 서브쿼리) => 성능 문제를 생각하면서 사용해야 한다.
join이용하여 데이터를 추출한 방법
select la.lano, l.titl, m.name, s.work, la.rdt, r.name, m2.name, mr.posi
from lect_appl la
inner join memb m on la.mno=m.mno
inner join stnt s on la.mno=s.mno
inner join lect l on la.lno=l.lno
left outer join room r on l.rno=r.rno
left outer join memb m2 on l.mno=m2.mno
left outer join mgr mr on l.mno=mr.mno;select 절에 서브쿼리 사용하기
1단계: 수강신청 데이터를 출력
select
la.lano,
la.lno,
la.mno,
date_format(la.rdt, '%Y-%m-%d') reg_dt
from lect_appl la;2단계 : 서브 쿼리를 이용하여 강의명을 가져오기
3단계 : 서브 쿼리를 이용하여 학생명을 가져오기
from 절에 서브쿼리 사용하기
0단계 : 강의 정보를 가져온다.
1단계 : 강의 상세 정보를 가져오는 select를 준비한다. => 서브 쿼리를 이용하여 강의실 이름과 매니저 이름, 직위 정보를 가져오기
2단계: 위에서 준비한 select 결과를 가상 테이블로 사용하여 기존의 lect_appl 테이블과 조인한다
from 절에서 반복적으로 사용하는 서브 쿼리가 있다면, 가상 테이블인 view로 정의해놓고 사용하는 것이 편하다.
위의 질의문을 view를 사용하여 다시 작성해보자!
where 절에 서브쿼리 사용하기
과장 또는 대리 매니저가 담당하고 있는 수강 신청만 추출하기
Last updated
Was this helpful?