SlideShare a Scribd company logo
1 of 5
Download to read offline
SQL초보에서 Schema Objects까지
6.6 계층형 쿼리(Hierarchical Query)
 EMP 테이블의 MGR 칼럼은 외래키로 자기자신 테이블 EMP의 EMPNO 값을 참조하는 관리자
를 뜻하는 칼럼이다. 이렇게 계층관계 칼럼이 있는 경우 계층구조를 이용하여 데이터를 추출
할 수 있는 계층적 질의문을 사용하면 된다.
[형식]
SELECT 칼럼
FROM 테이블
WHERE 조건
START WITH 조건
CONNECT BY [PRIOR] [NOCYCLE]
[ORDER SIBLINGS BY 칼럼, 칼럼]
START WITH : 시작 데이터를 지정한다.
CONNECT BY : 계층구조에서 다음에 연결될 데이터를 지정한다.
PRIOR : CONNECT BY 절에 이용되며 현재 읽은 칼럼을 지정한다.
PRIOR 자식 = 부모 (TOP DOWN 형태 출력)
PRIOR 부모 = 자식 (BOTTOM UP 형태 출력)
NOCYCLE : 데이터를 펼치면서 이미 나타났던 데이터가 다시 나타나는 경우 CYCLE이 형성되
었다고 한다. 이때 오류가 발생하는데 NOCYCLE을 추가하면 사이클이 발생한
이후의 데이터를 출력하지 않는다.
ORDER SIBLINGS BY : 동일한 LEVEL인 경우 노드를 형제 노드라고 하고 형제노드들의
정렬순서를 지정한다.
 계층형 질의에서 사용되는 가상칼럼
LEVEL : 최상위 루트 데이터가 1, 하위로 갈수록 1씩 증가
CONNECT_BY_ISLEAF : 최하단 리프데이터이면 1, 아니면 0
CONNECT_BY_ISCYCLE : 해당 데이터가 조상으로써 존재하면 1, 아니면 0, 조상이란 자신으로
부터 루트까지의 경로에 존재하는 데이터를 의미한다.
 계층형 쿼리에서 사용가능한 함수
SYS_CONNECT_BY_PATH (칼럼, 경로분리자): 루트데이터에서부터 전개할 데이터 까지의 경로를
표시한다.
CONNECT_BY_ROOT 칼럼 : 현재 전개할 데이터의 루트 데이터를 표시한다.
SELECT EMPNO, ENAME,
CONNECT_BY_ROOT ENAME,
SYS_CONNECT_BY_PATH(ENAME, '/') 경로
FROM EMP
START WITH MGR IS NULL --시작데이터를 지정
CONNECT BY PRIOR EMPNO = MGR; --상위(부모)의 EMPNO를 MGR값으로 가지는
데이터가 다음 연결될 데이터이다. 이 연결고리를 지정
7839 KING KING /KING
7566 JONES KING /KING/JONES
7788 SCOTT KING /KING/JONES/SCOTT
……
7844 TURNER KING /KING/BLAKE/TURNER
7900 JAMES KING /KING/BLAKE/JAMES
7782 CLARK KING /KING/CLARK
7934 MILLER KING /KING/CLARK/MILLER
-- EMP 테이블에서 KING부터 시작하여 아래와 같은 결과를 출력하는 쿼리를 작성하세요.
-- 트리구조에서 위에 있는 직원이 관리자임을 뜻한
-- (empno, mgr 칼럼을 적절히 이용하세요)
KING 5000
JONES 2975 20
SCOTT 3000 20
ADAMS 1100 20
FORD 3000 20
SMITH 800 20
BLAKE 2850 30
ALLEN 1600 30
WARD 1250 30
MARTIN 1250 30
TURNER 1500 30
JAMES 950 30
CLARK 2450 10
MILLER 1300 10
select lpad(' ',(level-1)*2) || ename, sal, deptno
from emp
start with ename = 'KING'
connect by prior empno = mgr
create table Emp2 (
ename varchar2(20),
mname varchar2(20),
job varchar2(20)
);
insert into Emp2 values ('김길동','가길동','SALESMAN');
insert into Emp2 values ('남길동','하길동','ANALYST');
insert into Emp2 values ('박길동','가길동','ANALYST');
insert into Emp2 values ('가길동','남길동','CLERK');
insert into Emp2 values ('하길동',NULL,'SALESMAN');
commit;
select * from emp2;
ENAME MNAME JOB
-------------------- -------------------- --------------------
김길동 가길동 SALESMAN
남길동 하길동 ANALYST
박길동 가길동 ANALYST
가길동 남길동 CLERK
하길동 SALESMAN
-- 최고 관리자 하길동부터 TOP DOWN형태로 출력
select LPAD(' ',(level-1)*2,' ')||ename, job
from emp2
start with ename = '하길동'
connect by prior ename = mname -- 상위(관리자) ename을 mname으로 가지는레코드
하길동 SALESMAN
남길동 ANALYST
가길동 CLERK
김길동 SALESMAN
박길동 ANALYST
-- 최하위 박길동부터 최상위 하길동까지... 김길동은 안나온다.
select LPAD(' ',(level-1)*2,' ')||ename, job
from emp2
start with ename = '박길동'
connect by prior mname = ename
박길동 ANALYST
가길동 CLERK
남길동 ANALYST
하길동 SALESMAN
-- 계층쿼리에서 가지제거(노드제거)
where절로 제한하면 그 노드만 빠지지만 connect by 절에서 제거하면 그 이하 모든 노드가
제거
* where절에서 가길동만 제거
select LPAD(' ',(level-1)*2,' ')||ename, job
from emp2
where ename != '가길동'
start with ename = '하길동'
connect by prior ename = mname
하길동 SALESMAN
남길동 ANALYST
김길동 SALESMAN
박길동 ANALYST
* connect by 절에서 제거, 가길동 이하 모든 노드가 제거된다.
select LPAD(' ',(level-1)*2,' ')||ename, job
from emp2
start with ename = '하길동'
connect by prior ename = mname
and ename != '가길동'
하길동 SALESMAN
남길동 ANALYST
-- EMP 테이블에서 'SMITH' 사원에 대해 입사이후 현재까지의working day수(토/일요일, 공
휴일 제외)를 출력하세요. 토/일요일 이외의 휴일은 4일로 offday라는 테이블에 다음과 같이
존재한다고 하자.
create table offday (
ilja varchar2(8),
cmt varchar2(50)
)
insert into offday values ('20100301','삼일절');
insert into offday values ('20120301','삼일절');
insert into offday values ('20121225','성탄절');
insert into offday values ('20130505','어린이날');
commit;
SELECT COUNT(*) AS WORKINGDAY
FROM(
SELECT LEVEL,
TO_CHAR((HIREDATE + LEVEL), 'YYYYMMDD') PLUSDATE,
TO_CHAR((HIREDATE + LEVEL), 'DAY') PLUSDAY
FROM (
SELECT HIREDATE, SYSDATE AS SYSD
FROM emp
WHERE ename = 'SMITH'
)
CONNECT BY LEVEL < SYSD – HIREDATE + 1
ORDER BY LEVEL DESC
)
WHERE PLUSDATE NOT IN(SELECT ILJA FROM OFFDAY)
AND PLUSDAY NOT IN ('토요일', '일요일')

More Related Content

What's hot

오라클강의/자바강의/닷넷강의/자마린교육/아두이노교육학원추천_#13.SQL초보에서 Schema Objects까지
오라클강의/자바강의/닷넷강의/자마린교육/아두이노교육학원추천_#13.SQL초보에서 Schema Objects까지오라클강의/자바강의/닷넷강의/자마린교육/아두이노교육학원추천_#13.SQL초보에서 Schema Objects까지
오라클강의/자바강의/닷넷강의/자마린교육/아두이노교육학원추천_#13.SQL초보에서 Schema Objects까지탑크리에듀(구로디지털단지역3번출구 2분거리)
 
[구로IT학원추천/구로디지털단지IT학원/국비지원IT학원/재직자/구직자환급교육]#9.SQL초보에서 Schema Objects까지
[구로IT학원추천/구로디지털단지IT학원/국비지원IT학원/재직자/구직자환급교육]#9.SQL초보에서 Schema Objects까지[구로IT학원추천/구로디지털단지IT학원/국비지원IT학원/재직자/구직자환급교육]#9.SQL초보에서 Schema Objects까지
[구로IT학원추천/구로디지털단지IT학원/국비지원IT학원/재직자/구직자환급교육]#9.SQL초보에서 Schema Objects까지탑크리에듀(구로디지털단지역3번출구 2분거리)
 
(재직자환급교육/사업주위탁/IT실무교육/구로IT학원/오라클교육/SQL기초강좌/IT강좌)#10.SQL초보에서 Schema Objects까지
(재직자환급교육/사업주위탁/IT실무교육/구로IT학원/오라클교육/SQL기초강좌/IT강좌)#10.SQL초보에서 Schema Objects까지(재직자환급교육/사업주위탁/IT실무교육/구로IT학원/오라클교육/SQL기초강좌/IT강좌)#10.SQL초보에서 Schema Objects까지
(재직자환급교육/사업주위탁/IT실무교육/구로IT학원/오라클교육/SQL기초강좌/IT강좌)#10.SQL초보에서 Schema Objects까지탑크리에듀(구로디지털단지역3번출구 2분거리)
 
(SQL초보자를 위한, 쿼리최적화 for SQL튜닝)SQL쿼리작성Tip,최적화팁,최적화된SQL작성방법교육
(SQL초보자를 위한, 쿼리최적화 for SQL튜닝)SQL쿼리작성Tip,최적화팁,최적화된SQL작성방법교육(SQL초보자를 위한, 쿼리최적화 for SQL튜닝)SQL쿼리작성Tip,최적화팁,최적화된SQL작성방법교육
(SQL초보자를 위한, 쿼리최적화 for SQL튜닝)SQL쿼리작성Tip,최적화팁,최적화된SQL작성방법교육탑크리에듀(구로디지털단지역3번출구 2분거리)
 
(SQL힌트튜닝,온라인화상교육#3회차,강의자료,12/22)중첩루프조인개요,USE_NL, ORDERED, USE_NL_WITH_INDEX_오...
(SQL힌트튜닝,온라인화상교육#3회차,강의자료,12/22)중첩루프조인개요,USE_NL, ORDERED, USE_NL_WITH_INDEX_오...(SQL힌트튜닝,온라인화상교육#3회차,강의자료,12/22)중첩루프조인개요,USE_NL, ORDERED, USE_NL_WITH_INDEX_오...
(SQL힌트튜닝,온라인화상교육#3회차,강의자료,12/22)중첩루프조인개요,USE_NL, ORDERED, USE_NL_WITH_INDEX_오...탑크리에듀(구로디지털단지역3번출구 2분거리)
 
(쿼리 변환, Query Transformation,서브쿼리푸시,SubQuery Pushing)SQL튜닝을 위해 서브쿼리의 드라이빙을 제어...
(쿼리 변환, Query Transformation,서브쿼리푸시,SubQuery Pushing)SQL튜닝을 위해 서브쿼리의 드라이빙을 제어...(쿼리 변환, Query Transformation,서브쿼리푸시,SubQuery Pushing)SQL튜닝을 위해 서브쿼리의 드라이빙을 제어...
(쿼리 변환, Query Transformation,서브쿼리푸시,SubQuery Pushing)SQL튜닝을 위해 서브쿼리의 드라이빙을 제어...탑크리에듀(구로디지털단지역3번출구 2분거리)
 
암달의 법칙과 쿼리튜닝 기초
암달의 법칙과 쿼리튜닝 기초암달의 법칙과 쿼리튜닝 기초
암달의 법칙과 쿼리튜닝 기초Hoyoung Jung
 
효율적인Sql작성방법 3주차
효율적인Sql작성방법 3주차효율적인Sql작성방법 3주차
효율적인Sql작성방법 3주차희동 강
 

What's hot (20)

오라클강의/자바강의/닷넷강의/자마린교육/아두이노교육학원추천_#13.SQL초보에서 Schema Objects까지
오라클강의/자바강의/닷넷강의/자마린교육/아두이노교육학원추천_#13.SQL초보에서 Schema Objects까지오라클강의/자바강의/닷넷강의/자마린교육/아두이노교육학원추천_#13.SQL초보에서 Schema Objects까지
오라클강의/자바강의/닷넷강의/자마린교육/아두이노교육학원추천_#13.SQL초보에서 Schema Objects까지
 
IT실무교육학원/자바학원/오라클학원/SQL기초학원추천_#11.SQL초보에서 Schema Objects까지
IT실무교육학원/자바학원/오라클학원/SQL기초학원추천_#11.SQL초보에서 Schema Objects까지IT실무교육학원/자바학원/오라클학원/SQL기초학원추천_#11.SQL초보에서 Schema Objects까지
IT실무교육학원/자바학원/오라클학원/SQL기초학원추천_#11.SQL초보에서 Schema Objects까지
 
일반함수 및 조건식 1
일반함수 및 조건식 1일반함수 및 조건식 1
일반함수 및 조건식 1
 
[구로IT학원추천/구로디지털단지IT학원/국비지원IT학원/재직자/구직자환급교육]#9.SQL초보에서 Schema Objects까지
[구로IT학원추천/구로디지털단지IT학원/국비지원IT학원/재직자/구직자환급교육]#9.SQL초보에서 Schema Objects까지[구로IT학원추천/구로디지털단지IT학원/국비지원IT학원/재직자/구직자환급교육]#9.SQL초보에서 Schema Objects까지
[구로IT학원추천/구로디지털단지IT학원/국비지원IT학원/재직자/구직자환급교육]#9.SQL초보에서 Schema Objects까지
 
(재직자환급교육/사업주위탁/IT실무교육/구로IT학원/오라클교육/SQL기초강좌/IT강좌)#10.SQL초보에서 Schema Objects까지
(재직자환급교육/사업주위탁/IT실무교육/구로IT학원/오라클교육/SQL기초강좌/IT강좌)#10.SQL초보에서 Schema Objects까지(재직자환급교육/사업주위탁/IT실무교육/구로IT학원/오라클교육/SQL기초강좌/IT강좌)#10.SQL초보에서 Schema Objects까지
(재직자환급교육/사업주위탁/IT실무교육/구로IT학원/오라클교육/SQL기초강좌/IT강좌)#10.SQL초보에서 Schema Objects까지
 
일반함수 및 조건식 2
일반함수 및 조건식 2일반함수 및 조건식 2
일반함수 및 조건식 2
 
Sql기초강좌_select기본
Sql기초강좌_select기본Sql기초강좌_select기본
Sql기초강좌_select기본
 
(SQL초보자를 위한, 쿼리최적화 for SQL튜닝)SQL쿼리작성Tip,최적화팁,최적화된SQL작성방법교육
(SQL초보자를 위한, 쿼리최적화 for SQL튜닝)SQL쿼리작성Tip,최적화팁,최적화된SQL작성방법교육(SQL초보자를 위한, 쿼리최적화 for SQL튜닝)SQL쿼리작성Tip,최적화팁,최적화된SQL작성방법교육
(SQL초보자를 위한, 쿼리최적화 for SQL튜닝)SQL쿼리작성Tip,최적화팁,최적화된SQL작성방법교육
 
Sql기초강좌2_SET AUTOTRACE_SQL교육
Sql기초강좌2_SET AUTOTRACE_SQL교육Sql기초강좌2_SET AUTOTRACE_SQL교육
Sql기초강좌2_SET AUTOTRACE_SQL교육
 
(SQL힌트튜닝,온라인화상교육#3회차,강의자료,12/22)중첩루프조인개요,USE_NL, ORDERED, USE_NL_WITH_INDEX_오...
(SQL힌트튜닝,온라인화상교육#3회차,강의자료,12/22)중첩루프조인개요,USE_NL, ORDERED, USE_NL_WITH_INDEX_오...(SQL힌트튜닝,온라인화상교육#3회차,강의자료,12/22)중첩루프조인개요,USE_NL, ORDERED, USE_NL_WITH_INDEX_오...
(SQL힌트튜닝,온라인화상교육#3회차,강의자료,12/22)중첩루프조인개요,USE_NL, ORDERED, USE_NL_WITH_INDEX_오...
 
(쿼리 변환, Query Transformation,서브쿼리푸시,SubQuery Pushing)SQL튜닝을 위해 서브쿼리의 드라이빙을 제어...
(쿼리 변환, Query Transformation,서브쿼리푸시,SubQuery Pushing)SQL튜닝을 위해 서브쿼리의 드라이빙을 제어...(쿼리 변환, Query Transformation,서브쿼리푸시,SubQuery Pushing)SQL튜닝을 위해 서브쿼리의 드라이빙을 제어...
(쿼리 변환, Query Transformation,서브쿼리푸시,SubQuery Pushing)SQL튜닝을 위해 서브쿼리의 드라이빙을 제어...
 
Sql 조건연산자를 이용한 조건검색(2)
Sql 조건연산자를 이용한 조건검색(2)Sql 조건연산자를 이용한 조건검색(2)
Sql 조건연산자를 이용한 조건검색(2)
 
암달의 법칙과 쿼리튜닝 기초
암달의 법칙과 쿼리튜닝 기초암달의 법칙과 쿼리튜닝 기초
암달의 법칙과 쿼리튜닝 기초
 
(오라클힌트,SQL튜닝강좌#25)오라클WITH구문,서브쿼리 팩토링
(오라클힌트,SQL튜닝강좌#25)오라클WITH구문,서브쿼리 팩토링(오라클힌트,SQL튜닝강좌#25)오라클WITH구문,서브쿼리 팩토링
(오라클힌트,SQL튜닝강좌#25)오라클WITH구문,서브쿼리 팩토링
 
문자함수(2)
문자함수(2)문자함수(2)
문자함수(2)
 
Sql 조건연산자를 이용한 조건검색(1)
Sql 조건연산자를 이용한 조건검색(1)Sql 조건연산자를 이용한 조건검색(1)
Sql 조건연산자를 이용한 조건검색(1)
 
문자함수(1)
문자함수(1)문자함수(1)
문자함수(1)
 
집합함수(1)
집합함수(1)집합함수(1)
집합함수(1)
 
효율적인Sql작성방법 3주차
효율적인Sql작성방법 3주차효율적인Sql작성방법 3주차
효율적인Sql작성방법 3주차
 
1.9 튜닝의도구 10053 event
1.9 튜닝의도구 10053 event1.9 튜닝의도구 10053 event
1.9 튜닝의도구 10053 event
 

Viewers also liked

NCS기반 Spring Framework & MyBatis_ 스프링프레임워크 & 마이바티스 ☆무료강의자료 제공/ 구로오라클학원, 탑크리에...
NCS기반 Spring Framework & MyBatis_ 스프링프레임워크 & 마이바티스  ☆무료강의자료 제공/ 구로오라클학원, 탑크리에...NCS기반 Spring Framework & MyBatis_ 스프링프레임워크 & 마이바티스  ☆무료강의자료 제공/ 구로오라클학원, 탑크리에...
NCS기반 Spring Framework & MyBatis_ 스프링프레임워크 & 마이바티스 ☆무료강의자료 제공/ 구로오라클학원, 탑크리에...탑크리에듀(구로디지털단지역3번출구 2분거리)
 
NCS기반 Spring Framework & MyBatis_ 스프링프레임워크 & 마이바티스 ☆무료강의자료 제공/ 구로오라클학원, 탑크리에...
NCS기반 Spring Framework & MyBatis_ 스프링프레임워크 & 마이바티스  ☆무료강의자료 제공/ 구로오라클학원, 탑크리에...NCS기반 Spring Framework & MyBatis_ 스프링프레임워크 & 마이바티스  ☆무료강의자료 제공/ 구로오라클학원, 탑크리에...
NCS기반 Spring Framework & MyBatis_ 스프링프레임워크 & 마이바티스 ☆무료강의자료 제공/ 구로오라클학원, 탑크리에...탑크리에듀(구로디지털단지역3번출구 2분거리)
 
스프링프레임워크 & 마이바티스 무.료 강의자료 제공 (Spring IoC & DI)_ 구로자바학원/구로오라클학원/구로IT학원
스프링프레임워크 & 마이바티스 무.료 강의자료 제공 (Spring IoC & DI)_ 구로자바학원/구로오라클학원/구로IT학원스프링프레임워크 & 마이바티스 무.료 강의자료 제공 (Spring IoC & DI)_ 구로자바학원/구로오라클학원/구로IT학원
스프링프레임워크 & 마이바티스 무.료 강의자료 제공 (Spring IoC & DI)_ 구로자바학원/구로오라클학원/구로IT학원탑크리에듀(구로디지털단지역3번출구 2분거리)
 
#23.SQL초보에서 Schema Objects까지_SQL기초교육/오라클교육/국비지원환급교육/재직자교육/구로IT학원추천
#23.SQL초보에서 Schema Objects까지_SQL기초교육/오라클교육/국비지원환급교육/재직자교육/구로IT학원추천#23.SQL초보에서 Schema Objects까지_SQL기초교육/오라클교육/국비지원환급교육/재직자교육/구로IT학원추천
#23.SQL초보에서 Schema Objects까지_SQL기초교육/오라클교육/국비지원환급교육/재직자교육/구로IT학원추천탑크리에듀(구로디지털단지역3번출구 2분거리)
 
Spring Framework & MyBatis_ 스프링프레임워크 & 마이바티스 /구로오라클학원/ 구로자바학원/ 구로디지털단지역
Spring Framework & MyBatis_ 스프링프레임워크 & 마이바티스 /구로오라클학원/ 구로자바학원/ 구로디지털단지역Spring Framework & MyBatis_ 스프링프레임워크 & 마이바티스 /구로오라클학원/ 구로자바학원/ 구로디지털단지역
Spring Framework & MyBatis_ 스프링프레임워크 & 마이바티스 /구로오라클학원/ 구로자바학원/ 구로디지털단지역탑크리에듀(구로디지털단지역3번출구 2분거리)
 
Spring Framework & MyBatis_ 스프링프레임워크 & 마이바티스/ 구로오라클학원/ 구로자바학원/ 자바학원/ 오라클학원/ 구...
Spring Framework & MyBatis_ 스프링프레임워크 & 마이바티스/ 구로오라클학원/ 구로자바학원/ 자바학원/ 오라클학원/ 구...Spring Framework & MyBatis_ 스프링프레임워크 & 마이바티스/ 구로오라클학원/ 구로자바학원/ 자바학원/ 오라클학원/ 구...
Spring Framework & MyBatis_ 스프링프레임워크 & 마이바티스/ 구로오라클학원/ 구로자바학원/ 자바학원/ 오라클학원/ 구...탑크리에듀(구로디지털단지역3번출구 2분거리)
 
(IT고급기술교육)탑크리에듀교육센터_자바/SQL/스프링/닷넷/모바일앱/퍼블리싱/펌웨어실무교육센터
(IT고급기술교육)탑크리에듀교육센터_자바/SQL/스프링/닷넷/모바일앱/퍼블리싱/펌웨어실무교육센터(IT고급기술교육)탑크리에듀교육센터_자바/SQL/스프링/닷넷/모바일앱/퍼블리싱/펌웨어실무교육센터
(IT고급기술교육)탑크리에듀교육센터_자바/SQL/스프링/닷넷/모바일앱/퍼블리싱/펌웨어실무교육센터탑크리에듀(구로디지털단지역3번출구 2분거리)
 

Viewers also liked (9)

(JPA 엔티티 매니저)JPA 기초강좌, 엔티티 매니저. 엔티티 매니저팩토리
(JPA 엔티티 매니저)JPA 기초강좌, 엔티티 매니저. 엔티티 매니저팩토리(JPA 엔티티 매니저)JPA 기초강좌, 엔티티 매니저. 엔티티 매니저팩토리
(JPA 엔티티 매니저)JPA 기초강좌, 엔티티 매니저. 엔티티 매니저팩토리
 
NCS기반 Spring Framework & MyBatis_ 스프링프레임워크 & 마이바티스 ☆무료강의자료 제공/ 구로오라클학원, 탑크리에...
NCS기반 Spring Framework & MyBatis_ 스프링프레임워크 & 마이바티스  ☆무료강의자료 제공/ 구로오라클학원, 탑크리에...NCS기반 Spring Framework & MyBatis_ 스프링프레임워크 & 마이바티스  ☆무료강의자료 제공/ 구로오라클학원, 탑크리에...
NCS기반 Spring Framework & MyBatis_ 스프링프레임워크 & 마이바티스 ☆무료강의자료 제공/ 구로오라클학원, 탑크리에...
 
NCS기반 Spring Framework & MyBatis_ 스프링프레임워크 & 마이바티스 ☆무료강의자료 제공/ 구로오라클학원, 탑크리에...
NCS기반 Spring Framework & MyBatis_ 스프링프레임워크 & 마이바티스  ☆무료강의자료 제공/ 구로오라클학원, 탑크리에...NCS기반 Spring Framework & MyBatis_ 스프링프레임워크 & 마이바티스  ☆무료강의자료 제공/ 구로오라클학원, 탑크리에...
NCS기반 Spring Framework & MyBatis_ 스프링프레임워크 & 마이바티스 ☆무료강의자료 제공/ 구로오라클학원, 탑크리에...
 
스프링프레임워크 & 마이바티스 무.료 강의자료 제공 (Spring IoC & DI)_ 구로자바학원/구로오라클학원/구로IT학원
스프링프레임워크 & 마이바티스 무.료 강의자료 제공 (Spring IoC & DI)_ 구로자바학원/구로오라클학원/구로IT학원스프링프레임워크 & 마이바티스 무.료 강의자료 제공 (Spring IoC & DI)_ 구로자바학원/구로오라클학원/구로IT학원
스프링프레임워크 & 마이바티스 무.료 강의자료 제공 (Spring IoC & DI)_ 구로자바학원/구로오라클학원/구로IT학원
 
#23.SQL초보에서 Schema Objects까지_SQL기초교육/오라클교육/국비지원환급교육/재직자교육/구로IT학원추천
#23.SQL초보에서 Schema Objects까지_SQL기초교육/오라클교육/국비지원환급교육/재직자교육/구로IT학원추천#23.SQL초보에서 Schema Objects까지_SQL기초교육/오라클교육/국비지원환급교육/재직자교육/구로IT학원추천
#23.SQL초보에서 Schema Objects까지_SQL기초교육/오라클교육/국비지원환급교육/재직자교육/구로IT학원추천
 
[구로국비지원IT학원/재직자환급/오라클교육/SQL기초]#21.SQL초보에서 Schema Objects까지
[구로국비지원IT학원/재직자환급/오라클교육/SQL기초]#21.SQL초보에서 Schema Objects까지[구로국비지원IT학원/재직자환급/오라클교육/SQL기초]#21.SQL초보에서 Schema Objects까지
[구로국비지원IT학원/재직자환급/오라클교육/SQL기초]#21.SQL초보에서 Schema Objects까지
 
Spring Framework & MyBatis_ 스프링프레임워크 & 마이바티스 /구로오라클학원/ 구로자바학원/ 구로디지털단지역
Spring Framework & MyBatis_ 스프링프레임워크 & 마이바티스 /구로오라클학원/ 구로자바학원/ 구로디지털단지역Spring Framework & MyBatis_ 스프링프레임워크 & 마이바티스 /구로오라클학원/ 구로자바학원/ 구로디지털단지역
Spring Framework & MyBatis_ 스프링프레임워크 & 마이바티스 /구로오라클학원/ 구로자바학원/ 구로디지털단지역
 
Spring Framework & MyBatis_ 스프링프레임워크 & 마이바티스/ 구로오라클학원/ 구로자바학원/ 자바학원/ 오라클학원/ 구...
Spring Framework & MyBatis_ 스프링프레임워크 & 마이바티스/ 구로오라클학원/ 구로자바학원/ 자바학원/ 오라클학원/ 구...Spring Framework & MyBatis_ 스프링프레임워크 & 마이바티스/ 구로오라클학원/ 구로자바학원/ 자바학원/ 오라클학원/ 구...
Spring Framework & MyBatis_ 스프링프레임워크 & 마이바티스/ 구로오라클학원/ 구로자바학원/ 자바학원/ 오라클학원/ 구...
 
(IT고급기술교육)탑크리에듀교육센터_자바/SQL/스프링/닷넷/모바일앱/퍼블리싱/펌웨어실무교육센터
(IT고급기술교육)탑크리에듀교육센터_자바/SQL/스프링/닷넷/모바일앱/퍼블리싱/펌웨어실무교육센터(IT고급기술교육)탑크리에듀교육센터_자바/SQL/스프링/닷넷/모바일앱/퍼블리싱/펌웨어실무교육센터
(IT고급기술교육)탑크리에듀교육센터_자바/SQL/스프링/닷넷/모바일앱/퍼블리싱/펌웨어실무교육센터
 

More from 탑크리에듀(구로디지털단지역3번출구 2분거리)

[뷰제이에스학원]뷰제이에스(Vue.js) 프로그래밍 입문(프로그레시브 자바스크립트 프레임워크)
[뷰제이에스학원]뷰제이에스(Vue.js) 프로그래밍 입문(프로그레시브 자바스크립트 프레임워크)[뷰제이에스학원]뷰제이에스(Vue.js) 프로그래밍 입문(프로그레시브 자바스크립트 프레임워크)
[뷰제이에스학원]뷰제이에스(Vue.js) 프로그래밍 입문(프로그레시브 자바스크립트 프레임워크)탑크리에듀(구로디지털단지역3번출구 2분거리)
 
(WPF교육)ListBox와 Linq 쿼리를 이용한 간단한 데이터바인딩, 새창 띄우기, 이벤트 및 델리게이트를 통한 메인윈도우의 ListB...
(WPF교육)ListBox와 Linq 쿼리를 이용한 간단한 데이터바인딩, 새창 띄우기, 이벤트 및 델리게이트를 통한 메인윈도우의 ListB...(WPF교육)ListBox와 Linq 쿼리를 이용한 간단한 데이터바인딩, 새창 띄우기, 이벤트 및 델리게이트를 통한 메인윈도우의 ListB...
(WPF교육)ListBox와 Linq 쿼리를 이용한 간단한 데이터바인딩, 새창 띄우기, 이벤트 및 델리게이트를 통한 메인윈도우의 ListB...탑크리에듀(구로디지털단지역3번출구 2분거리)
 
[자마린교육/자마린실습]자바,스프링프레임워크(스프링부트) RESTful 웹서비스 구현 실습,자마린에서 스프링 웹서비스를 호출하고 응답 JS...
[자마린교육/자마린실습]자바,스프링프레임워크(스프링부트) RESTful 웹서비스 구현 실습,자마린에서 스프링 웹서비스를 호출하고 응답 JS...[자마린교육/자마린실습]자바,스프링프레임워크(스프링부트) RESTful 웹서비스 구현 실습,자마린에서 스프링 웹서비스를 호출하고 응답 JS...
[자마린교육/자마린실습]자바,스프링프레임워크(스프링부트) RESTful 웹서비스 구현 실습,자마린에서 스프링 웹서비스를 호출하고 응답 JS...탑크리에듀(구로디지털단지역3번출구 2분거리)
 
C#기초에서 윈도우, 스마트폰 앱개발 과정(c#.net, ado.net, win form, wpf, 자마린)_자마린학원_씨샵교육_WPF학원...
C#기초에서 윈도우, 스마트폰 앱개발 과정(c#.net, ado.net, win form, wpf, 자마린)_자마린학원_씨샵교육_WPF학원...C#기초에서 윈도우, 스마트폰 앱개발 과정(c#.net, ado.net, win form, wpf, 자마린)_자마린학원_씨샵교육_WPF학원...
C#기초에서 윈도우, 스마트폰 앱개발 과정(c#.net, ado.net, win form, wpf, 자마린)_자마린학원_씨샵교육_WPF학원...탑크리에듀(구로디지털단지역3번출구 2분거리)
 
자바, 웹 기초와 스프링 프레임워크 & 마이바티스 재직자 향상과정(자바학원/자바교육/자바기업출강]
자바, 웹 기초와 스프링 프레임워크 & 마이바티스 재직자 향상과정(자바학원/자바교육/자바기업출강]자바, 웹 기초와 스프링 프레임워크 & 마이바티스 재직자 향상과정(자바학원/자바교육/자바기업출강]
자바, 웹 기초와 스프링 프레임워크 & 마이바티스 재직자 향상과정(자바학원/자바교육/자바기업출강]탑크리에듀(구로디지털단지역3번출구 2분거리)
 
3. 안드로이드 애플리케이션 구성요소 3.2인텐트 part01(안드로이드학원/안드로이드교육/안드로이드강좌/안드로이드기업출강]
3. 안드로이드 애플리케이션 구성요소 3.2인텐트 part01(안드로이드학원/안드로이드교육/안드로이드강좌/안드로이드기업출강]3. 안드로이드 애플리케이션 구성요소 3.2인텐트 part01(안드로이드학원/안드로이드교육/안드로이드강좌/안드로이드기업출강]
3. 안드로이드 애플리케이션 구성요소 3.2인텐트 part01(안드로이드학원/안드로이드교육/안드로이드강좌/안드로이드기업출강]탑크리에듀(구로디지털단지역3번출구 2분거리)
 

More from 탑크리에듀(구로디지털단지역3번출구 2분거리) (20)

자마린.안드로이드 기본 내장레이아웃(Built-In List Item Layouts)
자마린.안드로이드 기본 내장레이아웃(Built-In List Item Layouts)자마린.안드로이드 기본 내장레이아웃(Built-In List Item Layouts)
자마린.안드로이드 기본 내장레이아웃(Built-In List Item Layouts)
 
(스프링프레임워크 강좌)스프링부트개요 및 HelloWorld 따라하기
(스프링프레임워크 강좌)스프링부트개요 및 HelloWorld 따라하기(스프링프레임워크 강좌)스프링부트개요 및 HelloWorld 따라하기
(스프링프레임워크 강좌)스프링부트개요 및 HelloWorld 따라하기
 
자마린 iOS 멀티화면 컨트롤러_네비게이션 컨트롤러, 루트 뷰 컨트롤러
자마린 iOS 멀티화면 컨트롤러_네비게이션 컨트롤러, 루트 뷰 컨트롤러자마린 iOS 멀티화면 컨트롤러_네비게이션 컨트롤러, 루트 뷰 컨트롤러
자마린 iOS 멀티화면 컨트롤러_네비게이션 컨트롤러, 루트 뷰 컨트롤러
 
[IT교육/IT학원]Develope를 위한 IT실무교육
[IT교육/IT학원]Develope를 위한 IT실무교육[IT교육/IT학원]Develope를 위한 IT실무교육
[IT교육/IT학원]Develope를 위한 IT실무교육
 
[아이오닉학원]아이오닉 하이브리드 앱 개발 과정(아이오닉2로 동적 모바일 앱 만들기)
[아이오닉학원]아이오닉 하이브리드 앱 개발 과정(아이오닉2로 동적 모바일 앱 만들기)[아이오닉학원]아이오닉 하이브리드 앱 개발 과정(아이오닉2로 동적 모바일 앱 만들기)
[아이오닉학원]아이오닉 하이브리드 앱 개발 과정(아이오닉2로 동적 모바일 앱 만들기)
 
[뷰제이에스학원]뷰제이에스(Vue.js) 프로그래밍 입문(프로그레시브 자바스크립트 프레임워크)
[뷰제이에스학원]뷰제이에스(Vue.js) 프로그래밍 입문(프로그레시브 자바스크립트 프레임워크)[뷰제이에스학원]뷰제이에스(Vue.js) 프로그래밍 입문(프로그레시브 자바스크립트 프레임워크)
[뷰제이에스학원]뷰제이에스(Vue.js) 프로그래밍 입문(프로그레시브 자바스크립트 프레임워크)
 
[씨샵학원/씨샵교육]C#, 윈폼, 네트워크, ado.net 실무프로젝트 과정
[씨샵학원/씨샵교육]C#, 윈폼, 네트워크, ado.net 실무프로젝트 과정[씨샵학원/씨샵교육]C#, 윈폼, 네트워크, ado.net 실무프로젝트 과정
[씨샵학원/씨샵교육]C#, 윈폼, 네트워크, ado.net 실무프로젝트 과정
 
[정보처리기사자격증학원]정보처리기사 취득 양성과정(국비무료 자격증과정)
[정보처리기사자격증학원]정보처리기사 취득 양성과정(국비무료 자격증과정)[정보처리기사자격증학원]정보처리기사 취득 양성과정(국비무료 자격증과정)
[정보처리기사자격증학원]정보처리기사 취득 양성과정(국비무료 자격증과정)
 
[wpf학원,wpf교육]닷넷, c#기반 wpf 프로그래밍 인터페이스구현 재직자 향상과정
[wpf학원,wpf교육]닷넷, c#기반 wpf 프로그래밍 인터페이스구현 재직자 향상과정[wpf학원,wpf교육]닷넷, c#기반 wpf 프로그래밍 인터페이스구현 재직자 향상과정
[wpf학원,wpf교육]닷넷, c#기반 wpf 프로그래밍 인터페이스구현 재직자 향상과정
 
(WPF교육)ListBox와 Linq 쿼리를 이용한 간단한 데이터바인딩, 새창 띄우기, 이벤트 및 델리게이트를 통한 메인윈도우의 ListB...
(WPF교육)ListBox와 Linq 쿼리를 이용한 간단한 데이터바인딩, 새창 띄우기, 이벤트 및 델리게이트를 통한 메인윈도우의 ListB...(WPF교육)ListBox와 Linq 쿼리를 이용한 간단한 데이터바인딩, 새창 띄우기, 이벤트 및 델리게이트를 통한 메인윈도우의 ListB...
(WPF교육)ListBox와 Linq 쿼리를 이용한 간단한 데이터바인딩, 새창 띄우기, 이벤트 및 델리게이트를 통한 메인윈도우의 ListB...
 
[자마린교육/자마린실습]자바,스프링프레임워크(스프링부트) RESTful 웹서비스 구현 실습,자마린에서 스프링 웹서비스를 호출하고 응답 JS...
[자마린교육/자마린실습]자바,스프링프레임워크(스프링부트) RESTful 웹서비스 구현 실습,자마린에서 스프링 웹서비스를 호출하고 응답 JS...[자마린교육/자마린실습]자바,스프링프레임워크(스프링부트) RESTful 웹서비스 구현 실습,자마린에서 스프링 웹서비스를 호출하고 응답 JS...
[자마린교육/자마린실습]자바,스프링프레임워크(스프링부트) RESTful 웹서비스 구현 실습,자마린에서 스프링 웹서비스를 호출하고 응답 JS...
 
[구로자마린학원/자마린강좌/자마린교육]3. xamarin.ios 3.3.5 추가적인 사항
[구로자마린학원/자마린강좌/자마린교육]3. xamarin.ios  3.3.5 추가적인 사항[구로자마린학원/자마린강좌/자마린교육]3. xamarin.ios  3.3.5 추가적인 사항
[구로자마린학원/자마린강좌/자마린교육]3. xamarin.ios 3.3.5 추가적인 사항
 
3. xamarin.i os 3.3 xamarin.ios helloworld 자세히 살펴보기 3.4.4 view controllers an...
3. xamarin.i os 3.3 xamarin.ios helloworld 자세히 살펴보기 3.4.4 view controllers an...3. xamarin.i os 3.3 xamarin.ios helloworld 자세히 살펴보기 3.4.4 view controllers an...
3. xamarin.i os 3.3 xamarin.ios helloworld 자세히 살펴보기 3.4.4 view controllers an...
 
5. 서브 쿼리(sub query) 5.1 서브 쿼리(sub query) 개요 5.2 단일행 서브쿼리(single row sub query)
5. 서브 쿼리(sub query) 5.1 서브 쿼리(sub query) 개요 5.2 단일행 서브쿼리(single row sub query)5. 서브 쿼리(sub query) 5.1 서브 쿼리(sub query) 개요 5.2 단일행 서브쿼리(single row sub query)
5. 서브 쿼리(sub query) 5.1 서브 쿼리(sub query) 개요 5.2 단일행 서브쿼리(single row sub query)
 
3. xamarin.i os 3.1 xamarin.ios 설치, 개발환경 3.2 xamarin.ios helloworld(단일 뷰) 실습[...
3. xamarin.i os 3.1 xamarin.ios 설치, 개발환경 3.2 xamarin.ios helloworld(단일 뷰) 실습[...3. xamarin.i os 3.1 xamarin.ios 설치, 개발환경 3.2 xamarin.ios helloworld(단일 뷰) 실습[...
3. xamarin.i os 3.1 xamarin.ios 설치, 개발환경 3.2 xamarin.ios helloworld(단일 뷰) 실습[...
 
(닷넷,자마린,아이폰실습)Xamarin.iOS HelloWorld 실습_멀티화면,화면전환_Xamarin교육/Xamarin강좌
(닷넷,자마린,아이폰실습)Xamarin.iOS HelloWorld 실습_멀티화면,화면전환_Xamarin교육/Xamarin강좌(닷넷,자마린,아이폰실습)Xamarin.iOS HelloWorld 실습_멀티화면,화면전환_Xamarin교육/Xamarin강좌
(닷넷,자마린,아이폰실습)Xamarin.iOS HelloWorld 실습_멀티화면,화면전환_Xamarin교육/Xamarin강좌
 
C#기초에서 윈도우, 스마트폰 앱개발 과정(c#.net, ado.net, win form, wpf, 자마린)_자마린학원_씨샵교육_WPF학원...
C#기초에서 윈도우, 스마트폰 앱개발 과정(c#.net, ado.net, win form, wpf, 자마린)_자마린학원_씨샵교육_WPF학원...C#기초에서 윈도우, 스마트폰 앱개발 과정(c#.net, ado.net, win form, wpf, 자마린)_자마린학원_씨샵교육_WPF학원...
C#기초에서 윈도우, 스마트폰 앱개발 과정(c#.net, ado.net, win form, wpf, 자마린)_자마린학원_씨샵교육_WPF학원...
 
자바, 웹 기초와 스프링 프레임워크 & 마이바티스 재직자 향상과정(자바학원/자바교육/자바기업출강]
자바, 웹 기초와 스프링 프레임워크 & 마이바티스 재직자 향상과정(자바학원/자바교육/자바기업출강]자바, 웹 기초와 스프링 프레임워크 & 마이바티스 재직자 향상과정(자바학원/자바교육/자바기업출강]
자바, 웹 기초와 스프링 프레임워크 & 마이바티스 재직자 향상과정(자바학원/자바교육/자바기업출강]
 
3. xamarin.i os 3.1 xamarin.ios 설치, 개발환경 3.2 xamarin.ios helloworld_자마린학원_자마린...
3. xamarin.i os 3.1 xamarin.ios 설치, 개발환경 3.2 xamarin.ios helloworld_자마린학원_자마린...3. xamarin.i os 3.1 xamarin.ios 설치, 개발환경 3.2 xamarin.ios helloworld_자마린학원_자마린...
3. xamarin.i os 3.1 xamarin.ios 설치, 개발환경 3.2 xamarin.ios helloworld_자마린학원_자마린...
 
3. 안드로이드 애플리케이션 구성요소 3.2인텐트 part01(안드로이드학원/안드로이드교육/안드로이드강좌/안드로이드기업출강]
3. 안드로이드 애플리케이션 구성요소 3.2인텐트 part01(안드로이드학원/안드로이드교육/안드로이드강좌/안드로이드기업출강]3. 안드로이드 애플리케이션 구성요소 3.2인텐트 part01(안드로이드학원/안드로이드교육/안드로이드강좌/안드로이드기업출강]
3. 안드로이드 애플리케이션 구성요소 3.2인텐트 part01(안드로이드학원/안드로이드교육/안드로이드강좌/안드로이드기업출강]
 

#17.SQL초보에서 Schema Objects까지_오라클교육/SQL기초교육/구로IT학원/구로디짙털단지역

  • 1. SQL초보에서 Schema Objects까지 6.6 계층형 쿼리(Hierarchical Query)  EMP 테이블의 MGR 칼럼은 외래키로 자기자신 테이블 EMP의 EMPNO 값을 참조하는 관리자 를 뜻하는 칼럼이다. 이렇게 계층관계 칼럼이 있는 경우 계층구조를 이용하여 데이터를 추출 할 수 있는 계층적 질의문을 사용하면 된다. [형식] SELECT 칼럼 FROM 테이블 WHERE 조건 START WITH 조건 CONNECT BY [PRIOR] [NOCYCLE] [ORDER SIBLINGS BY 칼럼, 칼럼] START WITH : 시작 데이터를 지정한다. CONNECT BY : 계층구조에서 다음에 연결될 데이터를 지정한다. PRIOR : CONNECT BY 절에 이용되며 현재 읽은 칼럼을 지정한다. PRIOR 자식 = 부모 (TOP DOWN 형태 출력) PRIOR 부모 = 자식 (BOTTOM UP 형태 출력) NOCYCLE : 데이터를 펼치면서 이미 나타났던 데이터가 다시 나타나는 경우 CYCLE이 형성되 었다고 한다. 이때 오류가 발생하는데 NOCYCLE을 추가하면 사이클이 발생한 이후의 데이터를 출력하지 않는다. ORDER SIBLINGS BY : 동일한 LEVEL인 경우 노드를 형제 노드라고 하고 형제노드들의 정렬순서를 지정한다.  계층형 질의에서 사용되는 가상칼럼 LEVEL : 최상위 루트 데이터가 1, 하위로 갈수록 1씩 증가 CONNECT_BY_ISLEAF : 최하단 리프데이터이면 1, 아니면 0 CONNECT_BY_ISCYCLE : 해당 데이터가 조상으로써 존재하면 1, 아니면 0, 조상이란 자신으로 부터 루트까지의 경로에 존재하는 데이터를 의미한다.  계층형 쿼리에서 사용가능한 함수 SYS_CONNECT_BY_PATH (칼럼, 경로분리자): 루트데이터에서부터 전개할 데이터 까지의 경로를
  • 2. 표시한다. CONNECT_BY_ROOT 칼럼 : 현재 전개할 데이터의 루트 데이터를 표시한다. SELECT EMPNO, ENAME, CONNECT_BY_ROOT ENAME, SYS_CONNECT_BY_PATH(ENAME, '/') 경로 FROM EMP START WITH MGR IS NULL --시작데이터를 지정 CONNECT BY PRIOR EMPNO = MGR; --상위(부모)의 EMPNO를 MGR값으로 가지는 데이터가 다음 연결될 데이터이다. 이 연결고리를 지정 7839 KING KING /KING 7566 JONES KING /KING/JONES 7788 SCOTT KING /KING/JONES/SCOTT …… 7844 TURNER KING /KING/BLAKE/TURNER 7900 JAMES KING /KING/BLAKE/JAMES 7782 CLARK KING /KING/CLARK 7934 MILLER KING /KING/CLARK/MILLER -- EMP 테이블에서 KING부터 시작하여 아래와 같은 결과를 출력하는 쿼리를 작성하세요. -- 트리구조에서 위에 있는 직원이 관리자임을 뜻한 -- (empno, mgr 칼럼을 적절히 이용하세요) KING 5000 JONES 2975 20 SCOTT 3000 20 ADAMS 1100 20 FORD 3000 20 SMITH 800 20 BLAKE 2850 30 ALLEN 1600 30 WARD 1250 30 MARTIN 1250 30 TURNER 1500 30 JAMES 950 30 CLARK 2450 10 MILLER 1300 10
  • 3. select lpad(' ',(level-1)*2) || ename, sal, deptno from emp start with ename = 'KING' connect by prior empno = mgr create table Emp2 ( ename varchar2(20), mname varchar2(20), job varchar2(20) ); insert into Emp2 values ('김길동','가길동','SALESMAN'); insert into Emp2 values ('남길동','하길동','ANALYST'); insert into Emp2 values ('박길동','가길동','ANALYST'); insert into Emp2 values ('가길동','남길동','CLERK'); insert into Emp2 values ('하길동',NULL,'SALESMAN'); commit; select * from emp2; ENAME MNAME JOB -------------------- -------------------- -------------------- 김길동 가길동 SALESMAN 남길동 하길동 ANALYST 박길동 가길동 ANALYST 가길동 남길동 CLERK 하길동 SALESMAN -- 최고 관리자 하길동부터 TOP DOWN형태로 출력 select LPAD(' ',(level-1)*2,' ')||ename, job from emp2 start with ename = '하길동' connect by prior ename = mname -- 상위(관리자) ename을 mname으로 가지는레코드 하길동 SALESMAN 남길동 ANALYST 가길동 CLERK 김길동 SALESMAN
  • 4. 박길동 ANALYST -- 최하위 박길동부터 최상위 하길동까지... 김길동은 안나온다. select LPAD(' ',(level-1)*2,' ')||ename, job from emp2 start with ename = '박길동' connect by prior mname = ename 박길동 ANALYST 가길동 CLERK 남길동 ANALYST 하길동 SALESMAN -- 계층쿼리에서 가지제거(노드제거) where절로 제한하면 그 노드만 빠지지만 connect by 절에서 제거하면 그 이하 모든 노드가 제거 * where절에서 가길동만 제거 select LPAD(' ',(level-1)*2,' ')||ename, job from emp2 where ename != '가길동' start with ename = '하길동' connect by prior ename = mname 하길동 SALESMAN 남길동 ANALYST 김길동 SALESMAN 박길동 ANALYST * connect by 절에서 제거, 가길동 이하 모든 노드가 제거된다. select LPAD(' ',(level-1)*2,' ')||ename, job from emp2 start with ename = '하길동' connect by prior ename = mname and ename != '가길동' 하길동 SALESMAN 남길동 ANALYST
  • 5. -- EMP 테이블에서 'SMITH' 사원에 대해 입사이후 현재까지의working day수(토/일요일, 공 휴일 제외)를 출력하세요. 토/일요일 이외의 휴일은 4일로 offday라는 테이블에 다음과 같이 존재한다고 하자. create table offday ( ilja varchar2(8), cmt varchar2(50) ) insert into offday values ('20100301','삼일절'); insert into offday values ('20120301','삼일절'); insert into offday values ('20121225','성탄절'); insert into offday values ('20130505','어린이날'); commit; SELECT COUNT(*) AS WORKINGDAY FROM( SELECT LEVEL, TO_CHAR((HIREDATE + LEVEL), 'YYYYMMDD') PLUSDATE, TO_CHAR((HIREDATE + LEVEL), 'DAY') PLUSDAY FROM ( SELECT HIREDATE, SYSDATE AS SYSD FROM emp WHERE ename = 'SMITH' ) CONNECT BY LEVEL < SYSD – HIREDATE + 1 ORDER BY LEVEL DESC ) WHERE PLUSDATE NOT IN(SELECT ILJA FROM OFFDAY) AND PLUSDAY NOT IN ('토요일', '일요일')