SQL 자격검정 실전문제 풀이 해설 노랭이 82번, 89번, 94번, 96번(P.91,95,99,100)
2021-11-27 07:03:21
SQL 자격검정 실전문제 풀이 해설 노랭이 82번
- ORDER BY 1,2 첫번째 칼럼 오름차순 정렬, 첫 번째 칼럼 중복 시 두 번째 칼럼 오름차순 정렬
- UNION ALL 사용 경우 칼럼 ALIAS는 첫 번째 SQL 모듈 기준 표시, 정렬 기준은 마지막 SQL 모듈에 표시
SQL 자격검정 실전문제 풀이 해설 노랭이 89번
- CONNECT BY 절은 WHERE절과 다름
- START WITH절에서 필터링된 시작 데이터는 결과 목록에 포함, 이후 CONNECT BY 절에 의해 필터링
- PRIOR 키워드 붙은 쪽 칼럼 - 이전 집합 의미
SQL 자격검정 실전문제 풀이 해설 노랭이 94번
COUNT는 행의 수 세기
SQL 자격검정 실전문제 풀이 해설 노랭이 96번
②의 경우, 사원 테이블에서 한 로우 가져와 가족 테이블 찾는데, 물론 테이블 행의 순서는 없다고는 하지만 DBMS가 내부적으로 검색할 때 첫 번째고 비교한 행이 <> 만족하면 바로 OK, EXISTS는 뒤에 찾는 행에서 =인 행이 있어도 거기까지 찾지 않고 OK 나오면 서브 쿼리 밖으로 나와버림, 그래서 틀린 결과가 나오게 됨.
EXISTS는 조건에 만족하는 게 하나라도 있을 경우 찾을 때 사용하는 것!
③NOT EXISTS문
SELECT 이름
FROM 사원
WHERE NOT EXISTS(SELECT*
FROM 가족
WHERE 사번 = 부양사번)
=NOT IN문
SELECT 이름
FROM 사원
WHERE 사번 NOT IN(SELECT 부양사번
FROM 가족)
=LEFT OUTER JOIN
SELECT 이름
FROM 사원 LEFT OUTER JOIN 가족
ON (사번 = 부양사번)
WHERE 부양사번 IS NULL