SQLD 후기

객관식


- ERD 분석 문제 => 두 개 정도 나왔던 걸로 기억
- 트랜잭션의 4가지 속성(고립성이 격리성으로 지속성이 영속성으로 출제)
- 설계속성, 파생속성 등 속성의 유형에 대한 설명
- 슈퍼/서브타입
- 다음 중 관계에 대한 설명으로 옳지 않은 것은?
- 객체무결성, 도메인무결성, 참조무결성, 정규화 중 SQL에서 제공하는 제약조건이 아닌 것은?
- 테이블 분할을 하는 반정규화를 해야 하는 상황이 아닌 거은?
- PRIMARY KEY가 설정되어 있는 칼럼에 중복된 결과 값이 있을 수 있다는 선택지 찾는 게 있었음
- INNER JOIN, LEFT OUTER JOIN, RIGHT OUTER JOIN, FULL OUTER JOIN, CROSS JOIN 으로 생기는 결과행 수 모두 더하는 문제
- NULL이 포함된 테이블에서 COUNT함수 사용한 결과 행수이 합 구하기
- LAST_VALUE
- PRIOR TO
- ROLLUP, GROUPING SET 문제 => 둘 중 하나에서 (DEPTNO, JOB, ()) 빈 괄호가 있는 경우의 결과값을 물어봄
- GROUPING SET은 UNION ALL로 같은 결과를 반환하는 쿼리문 찾는 문제였던 것 같음
- RANK, DENSE_RANK, ROW_NUMBER
- 쿼리 실행 결과 보여주고 제대로 작성된 쿼리문 찾는 문제 => 시험지 중간쯤에 몰려 있었고, 이게 제일 어려웠음
- SORT MERGE JOIN 특징
- HASH JOIN 특징

주관식

1. 인라인뷰와 동일한 결과를 반환하는 EXISTS 서브쿼리 작성
2. ROUND(38.512)?, CEIL(38.512?)
3. ORDER BY (CASE WHEN C1 IN (1,3,), THEN C1*3 END); 3번째로 나타나느 결과 값은?
4. NL JOIN 화살표 순서문제(교재에 있는 그림 참고)
5. WHERE BETWEEN ~ 에 해당하는 순수관계 연산자는?
6. HASH JOIN
7. 절차형 SQL => EXCEPTION WHEN OTHERS THEN
8. MAX (PARTITION BY ~)

시험 총평

생각보다 어려웠습니다. 특히 실행결과 주고 해당하는 쿼리문 찾는 문제. 합격만 하면 된다! 라고 생각하시는 분들은 그냥 몇 문제 버리고 나머지 문제를 확실하게 맞히는 방향으로 전략을 세우는 것도 좋을 것 같습니다. 시험시간이 1시간 30분이었는데 상당히 타이트하게 느껴졌습니다 .공부를 제대로 안해서 그런가...

저는 3주정도 준비했고, 데이터베이스 진흥원 홈페이지에 있는 SQL 전문가 가이드 내용을 보고 공부했습니다. 오라클과 마리아DB(SQL 서버와 오라클을 섞어놓은 것 같은 느낌. MYSQL 개발자가 오라클에서 나오 따로 개발한 것이라고 합니다.)로 실습했는데 오라클로 실습하시는 걸 추천합니다.

웹상에 SQLP 기출이라고 나와 있는 문제들도 참고했는데 도움이 많이 되었습니다. 이 문제들은 데이터베이스 진흥원 홈페이지에서 2011~2012년에 퀴즈 형시긍로 출제한 것을 정리해 놓은 내용입니다.