계층형 질의문 3

092 계층형 질의문으로 서열을 주고 데이터 출력하기 4

계층형 질의문의 짝꿍함수 : SYS_CONNECT_BY_PATH (가로로 데이터를 출력함.) 예제1. 다음과 같이 SYS_CONNECT_BY_PATH를 이용한 SQL을 작성하시오. SELECT ename, SYS_CONNECT_BY_PATH(ename, '/') AS path FROM emp START WITH ename = 'KING' CONNECT BY PRIOR empno = mgr; 문제 508. 위의 결과에서 ADAMS 행만 출력하시오. SELECT ename, SYS_CONNECT_BY_PATH(ename, '/') AS path FROM emp WHERE ename = 'ADAMS' START WITH ename = 'KING' CONNECT BY PRIOR empno = mgr; 문제 50..

Oracle DBA/SQL 2023.07.10

090 계층형 질의문으로 서열을 주고 데이터 출력하기 2

계층형 질의문 결과에서 검색 조건을 주는 방법 문제 504. 사원테이블에서 이름과, 월급을 출력하되, 직급 순으로 서열을 부여하고, 이름이 BLAKE인 사원은 제외하고 출력하시오. (가독성 좋게 rpad로 공백 넣기) SELECT LEVEL, rpad(' ', (LEVEL-1)*2)|| ename AS employee, sal FROM emp WHERE ename != 'BLAKE' START WITH ename = 'KING' CONNECT BY PRIOR empno = mgr ; 문제 505. 이번에는 BLAKE뿐 아니라 팀원들도 전부 안나오게 하시오. SELECT LEVEL, rpad(' ', (LEVEL-1)*2)|| ename AS employee, sal FROM emp START WITH e..

Oracle DBA/SQL 2023.07.10

089 계층형 질의문으로 서열을 주고 데이터 출력하기 1

: 데이터에서 서열을 발견해서 출력하는 쿼리 예제1. 사원 테이블의 서열을 계층형 질의문으로 출력하시오. SELECT LEVEL, empno, ename, mgr FROM emp START WITH ename = 'KING' -- 서열 1위 결정 CONNECT BY PRIOR empno = mgr; -- 계층형 질의문의 서열 연결고리 SELECT절에 LEVEL을 같이 적어주면 출력 결과에 대한 이해가 조금 더 쉬움. 구조 : START WITH 조건 CONNECT BY PRIOR PK(부모키) = FK(자식키) 앞 행의 empno가 본인 mgr이 되도록 연결 즉 LEVEL 1 KING의 사원번호(7839)가 관리자 번호인 사원들이 LEVEL 2 (JONES, BLAKE, CLARK) LEVEL 2의 사원..

Oracle DBA/SQL 2023.07.10