Oracle 기준으로 다음 SQL 의 실행 결과로 옳은 것은?[강사]강… | [SQLD] SQL 개발자 기출유형 모의고사 7회 상세 페이지
1[SQLD] SQL 개발자 기출유형 모의고사 7회
Oracle 기준으로 다음 SQL 의 실행 결과로 옳은 것은?[강사]
| 강사번호 | 이름 | 멘토번호 |
|---|---|---|
| 1 | 가온 | 3 |
| 2 | 나래 | 1 |
| 3 | 다솜 | 2 |
| 4 | 라온 | 1 |
SELECT 이름, LEVEL AS LV,
CONNECT_BY_ISCYCLE AS CYC
FROM 강사
START WITH 강사번호 = 1
CONNECT BY NOCYCLE PRIOR 강사번호 = 멘토번호
ORDER SIBLINGS BY 이름;1
| 이름 | LV | CYC |
|---|---|---|
| 가온 | 1 | 1 |
| 나래 | 2 | 0 |
| 다솜 | 3 | 0 |
| 라온 | 2 | 0 |
2
| 이름 | LV | CYC |
|---|---|---|
| 가온 | 1 | 0 |
| 나래 | 2 | 0 |
| 다솜 | 3 | 1 |
| 라온 | 2 | 0 |
3
| 이름 | LV | CYC |
|---|---|---|
| 가온 | 1 | 0 |
| 나래 | 2 | 0 |
| 다솜 | 3 | 0 |
| 가온 | 4 | 1 |
| 라온 | 2 | 0 |
4
| 이름 | LV | CYC |
|---|---|---|
| 가온 | 1 | 0 |
| 나래 | 2 | 0 |
| 다솜 | 3 | 0 |
| 라온 | 2 | 0 |
해설
가온의 멘토가 다솜이라 다솜 아래에 가온이 다시 이어지는 순환이 있지만, NOCYCLE 은 이미 지나온 가온을 다시 전개하지 않아 4행에서 멈춘다.
CONNECT_BY_ISCYCLE 은 자식이 자기 조상인 행에서 1 이므로, 자식 가온이 조상인 다솜만 1 이다.
- 루트 가온에 1 을 준 표는 순환 대상 행 자체에 표시된다고 오해한 것이다.
- 가온이 LEVEL 4 로 한 번 더 나온 표는 반복 행을 한 번 출력한 뒤 멈춘다고 본 결과이다.
- 모두 0 인 표는 NOCYCLE 로 전개가 끊기면 순환 표시도 없다고 본 것이다.
오류나 개정된 내용이 보이면 알려주세요