SQLD 41회 답 맞춰보기 / 후기 / 문제 보기 이전거랑 다름
SQLD 몇 회 차 인지 모르겠는데 시험을 학원 다니면서 공부해서...
부족한 게 많은 채로 갔다가 이번에 코로나로 쉬는 기간이 많아져서 다시 시험 봤음
41회 차 결과는 6월 25일 날 나온다고 함
일단 후기는 SQLD 시험을 보려고 공부했지만
이전 회사에서 왜 A/S게시판 목록을 불러올 때 매우...느렸는지 납득하게 해 줬고
어떤 방법으로 해결할 수 있는지 이론적으로 빠삭해지는 기회가 되었음
시험을 본 게 단지 자격증 취득만이 아닌 이론적으로 이걸 어떻게 해야 성능이 좋아지고
다른 문제가 안 생기는지 어떻게 해결해야 하는지 알게 되어서 좋았음
안드로이드 앱 공부나 java랑 php 하면서도 sql이 필수적인데 도움이 많이 될 거 같음
합격했으면 좋겠다!
1. 문제집 / 책
1) 데이터 자격검정 홈페이지에서 파는 책
문제집 이야기가 많은데 일단 5만 원짜리 데이터자격검정 홈페이지에서 파는 책 사서 공부할만한 거 같음
(나는 안 샀음 인터넷에 돌아다니는 pdf 다운로드하여서 확인함)
2) 이기적 진짜 비추천
ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ이기적 문제집 거지 같음
오류 같은 문제 많음 솔직히 SQL 자격검정 실전문제(카페에서 노랑이라고 함) 문제집에서
비슷한 유형 문제를 풀고 서로 다른 답을 내고 있는 문제를 자세히 보지 않았다면
서브 쿼리 문제 틀렸을 거 같음
이기적 문제는 한 번씩 풀어볼 만했지만 비추천함
차라리 기출문제 돌아다니는 거 다운로드하여서 푸세요
- 하지만 문제 풀고 정답 문제가 왜 정답인지 다른 데서는 어떻게 나오는지 직접 확인할 필요가 있었음
- 오류도 많음
- 보기 문제 보기 불편함
- 해설이나 이론을 이해하는 용도로는 괜찮았지만 (데이터 자격검정에서 파는 책 PDF로 읽은 게 더 도움되었음;)
이기적 문제 풀어볼 만 하나 21년도에 나온 문제집 20년도에 나온 문제집에 같은 문제도 있고 없는 문제도 있음
**** SQL 자격검정 실전문제 (무조건 사야 함)
이 문제집은 무조건 있어야 하나 최근에 데이터 자격검정 SQLD 책이 바뀐 것으로 암
- 이번에 '트랜잭션의 속성 적절한 것' 이런 문제가 나왔는데 원자성 일관성은 같으나 고립성(=격리성), 지속성(=영속성)으로 나옴 (답: 원자성/격리성/일관성/영속성) 이전 책으로 공부한 나한테는 카페에서 물어보는 사람이 없었다면 몰랐을 것
- ***************꼭 최신판으로 사세요***************
*** SQL 자격검정 실전문제로 공부한 순서
- 외워야 하는 건 그냥 깡으로 외우기 기본이론 함수 문법 자세히 보기... 생각 외로 어려워요 TRIM 이런 거 그냥 양옆을 잘라준다고 외웠는데 그러면 안됨 어떻게 사용하고 돌아가는지 알아야 함 ㅋㅋ.. 틀림
- 이해 안 되는 것 SQL 직접 작성해보기
- 이론이 이해가 안되는 것은 PDF 파일 다운로드하여서 확인해보기
- 옵티마이저부분 출제를 지양한대서 안봤음
- merge into 부분도 꼭 공부하세요..,
pdf랑 기출문제 링크 타고 가서 받았음
https://velog.io/@seona-jung/제38회-SQL-개발자SQLD-합격-후기-및-추천-공부-방법-수정-중
SQLD 카페에서 41회 답 맞춰본 거
확실해 보이는 거 번호에 굵은 표시
다들 합격하셨으면 좋겠습니다..
저두 합격하구싶음 ㅠ
번호 | 문제 | 정답 | 기타 의견 |
1 | 완전성/중복배제/비즈니스롤/기능성 | 4 | 기능성(이기적 확인문제에 있음) |
2 | 빠른 성능을 낼 수 있도록 원래 속성의 값을 계산하여 저장할 수 있도록 만든 속성은? 파생속성/기본속성/설계속성/PK속성 |
1 | 파생속성 (노랭이 17번 문제) |
3 | 이자와 이자율은 파생속성이다 문제 | 3 | 이자율은 기본속성 (노랭이 16번 문제) |
4 | 수강이력 조회 시 속도 개선할수 있는 방법(테이블에 있는 순서대로 인덱스) 1.주식별자를 인조식별자 수강번호로 해준다 2. 주식별자를 학번으로 해준다. -학번을 맨 위로 올려서 순서를 바꾼다 3. 수강이력에 단일 인조식별자를 넣어주면 조인이 수월해져 부하가 적어진다? 4. I/O가 빈번하니까 파티션을 해야한다 |
1번 2번 3번 4번 답이 다갈림 3?? 저도 3번,,저도3번.. 전 4번함... 누구 아는 사람 구해요..저는2번했어요, 저도4번했어요.. |
|
5 | 고객과 주문 erd (1:n) | 4 --->4번이 주문은 고객 없이 할수 있다 이런거였나요? --> 이거 맞을걸요? 틀린거 찾기 -> 기억나시는분 |
이거 문제뭔가요 한 고객은 여러 주문을 할 수 있다, 이런 보기들 있었던 문제 |
6 | 대량의 데이터 ~ / PK ~ | 2번 : 리스트 파티셔닝 | |
7 | 무언가 식별해준다~ | 4번 : 식별자 | |
8 | 엔터티의 일반적인 특징으로 부적절한 것은? | 다른 엔티티와 관계를 가지지 않는다. (노랭이 11번 기준 1번답 보기 달랐음) |
노랭이11번 문제인데 객관식 번호 순서는 달랐던거 같음. 쨋든'관계' 가 정 |
9 | 총 주문금액, 최초주문일자, 최종주문일자 문제 (파생속성으로만 이루어진 것은) | 4번 (정확한 보기랑 같이 적어주세요 논란이많음() | |
10 | (((문제 맞는지 기억나시는분 보기도 기억나시는분 ㅠ 틀린거 찾는것도))) [사용자]-|----o|=[계정]-|----o|=[계정그룹] 위에 사용자에 이어서 [사용자]-|----o|=[계약]-|-----o|=[청구] 틀린거 찾는거였나요? |
2번 한 계정은 반드시 계정그룹에 속한다 -->기억에 틀린거 찾기 한 계정은 반드시 계정 그룹에 속한다 |
2번아닐까요? 2번보기가 임의의 계정은 반드시 임의의 그룹에 속한다 라고 돼있었는데.. 틀렸던 보기로 기억해요.. 기억을 더듬어보면 그룹쪽에는 점선이었고, 계정쪽에는 실선이었으니..그룹은 반드시 계정이 있어야 되지만, 계정은 그룹에 속해도 되고 안해도 되는거라고 생각이드네요. |
11 | ROLLUP문제 같았는데 ROLLUP(a,b) 보기에 같은거 고르는거 같앗어요 아시는분 | ROLLUP문제 같았는데 ROLLUP(a,b) 보기에 같은거 고르는거 같앗어요 아시는분 -> 결과를 고르는 거였죠? 2번이었나 -> 이거 문제랑 보기 없이는 답 가리기 힘들거같아요 -> A 총합 B총합 전체총합이 답이였던거갘아요 정답에 A+B별 합계, A의 소계, total합계 있는게 답 |
|
12 | Where절에 쓸 수 없는 연산자? desc, not in, like, is null |
desc | |
13 | SET OPERATOR에서 수학의 교집합과 같은 기능을 하는 연산자는? | INTERSECT | 노랭이 81번 |
14 | merge into 문 데이터 존재할 경우 >=1 존재하지 않을 경우 <=4 | 3번 b a c 4번 b b c 둘중 하나가 답 |
|
15 | 계층 용어 부적절한 것 | 2번 : LPAD | LEVEL / LPAD / CONNECT_BY_ISLEAF / CONNECT_BY_ISCYCLE |
16 | (((having 문제 몇번인지 아시는분))) 3이상 구하는거였고 sum count 마구 나옴 having count문제 3이상 이었던 문제 >= 몇번문제인지 아시는분(겹쳐있어도) 잘라서 붙여주세요 |
count 함수있던 번호가 정답☞ having count가 16번 문제가 맞다면 3번having count(~) | |
17 | ((문제 기억나시는분 ㅠㅠ뭐 구하는지 몰라서 ㅠㅠ)) distinct |
3,4 | 문제 기억나시는분, 이게 뭔 문제였죠? where에는 a.c1=b.c1 하는거 같았는데 ------->이거 보기 sql 기억나시는분 ㅠㅠㅠ |
18 | 트랜잭션의 속성 적절한 것 | 3번 : 원자성/격리성/일관성/영속성 | 기출 복원 34회 24번 |
19 | Col3, Col2 , Col1 KeyA ? 순서로 정렬 SQLserver 기준으로 정렬 null 이 많이 있었음 |
||
20 | Max(salary) 부서별 최고 연봉 구하기 |
적절이었으면 답은2번 부서별 최고연봉자를 구하는것. | 맞는거 찾는거 같아요 |
21 | WHERE COL1 in('1005','20034',null) | null제외하고 1005 1005 20034 |
: 그럼 4칸짜리 아니고 3칸짜리에요? ---> 3칸짜리에요 NULL은 IN으로 비교할 수 없고, EXIST로 비교해야 함(NULL행 미포함) |
22 | grouping sets(a,b,()) 결과 | ||
23 | 서브쿼리 부적절한것 고르기 | 1 | |
24 | avg 함수(2건이 있는데 1건에 null 포함 avg(col2) from 어쩌구 where col1>0; avg(col2) from 어쩌구 col1 col2 20. 20 null. 0 |
20 10 |
|
25 | LTRIM(XXSQLD, 'X') RTRIM(SQLDXX, 'X') REPLACE('XXXSQLDXXX', 'X') TRIM(XXSQLDXX, 'X') 결과 틀린것 |
4 | TRIM(XXSQLDXX, 'X') 문법오류 |
26 | 테이블이 4개일 때 필요한 조인 개수 | 3개 | |
27 | SUM/COUNT(100, 150, NULL, 350) // 번호 모름 | 2번: 200 | 200 |
28 | LEFT OUTER JOIN | 2 | 노랭이 76번 |
29 | savepoint | 4번 : 1 / 7 / 9 | |
30 | 보기에 groping sets 들어간 긴 지문 | ||
31 | MAX(연봉) OVER PARTITION BY 부서ID AS 최고연봉 사원 부서ID 사원명 연봉 002 100 강감찬 3000 003 200 김유신 4500 006 300 변사또 4500 |
1 | 노랭이 117번 |
32 | sql특성 | 1번 | @.@@ 들어간 문제 |
33 | CNT | SUM | null --> 이거 답이 null이면 값이 0도 아닌 아무것도 없이 컬럼명만 있던건가요? --> 4번에 컬럼명만 있던거 말하는거 같아요. |
이거 문제 오류인 것같아요. 별칭 지정을 해줬는데 출력에는 별칭 반영을 안해줘서 sum(주문금액) 주문합계 이렇게 햇는데 table에는 주문금액이라 해놨어요 이거 어떻게 생긴 문제인지 아시는분~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 4번에 '데이터 없음' 있던 문제 |
34 | CONNECT BY PRIOR EMPLOYEE_ID = MANAGER_ID 계층형 결과지 보고 틀린것 고르기 |
역방향 (자식에서 부모로 가는 역방향이다 2번으로 기억) |
King 문제 |
35 | 트리거 문제 | 4번 트리거 | 노랭이 127 |
36 | 집합적/선언적/구조적/절차적 | 4번 : 절차적 | SQL은 구조적, 집합적, 선언적 질의 언어이다.ㅣ |
37 | BETWEEN :V1 AND :V2 | 1번 : (변수?) >= :V1 AND (변수?) <= :V2 | |
38 | 그룹핑 문제 grouping sets(col1,col2,()) 이렇게였던걸로 기억함 | 2번 ? 4번이라고 생각합니다. 4번보기 내용이 col1소계,col2소계,전체소계 였어요 |
민원지역 / 민원유형 문제 답보기 기억나시는분 있나요? |
39 | 트리거 문제 2 ( 3번이 rollback 안된다 이런 선지였어요) | execute들어 갔던 번호 -> 2번? | 트리거는 execute 없이 실행된다. (프로시져가 execute 필요함) |
40 | 변환 시 다른 값(가/나/다/라) | 40번문제 sql문에서 and 인데 abd로 오타있습니다. | 1번 2번 4번 답 논란이 많은 문제 / 지문에 오타도 있음 4 <> |
주관식 1 |
RANK (대문자 필수) | ||
주관식2 | 1,2,3,4주어진 자료에서 ORDER BY (CASE WHEN COL IN(1,3) THEN COL*3 ELSE COL END) DESC; | 1 | ORDER BY절 안에서 3, 2, 9, 4가 되고 desc순서가 인덱스처럼 사용되어서 3,4,1,2출력됨ㅁ |
주관식3 | CONNECT BY PRIOR 부서ID = 상위부서ID; | 마지막에 ;(세미콜론) 논란이 있네요 | |
주관식4 | ~는 인덱스의 리프 페이지가 곧 데이터 페이지이며 ~ | CLUSTERED 인덱스 | '클러스터' 라고 하면 틀리나요? |
주관식5 | 조인 문제 | CROSS JOIN | sql1) select * from tab1, tab2 / sql2) select * from tab1 ( ) tab2 ☞ sql1과 sql2의 결과같은 조인 |
6 | (100+Null)*2 | NULL | 이거 공집합이라고 적어도 되나요? --> 공집합(없는값)과 NULL(아직 알 수 없는 값)은 다르다고 생각합니다 |
주관식7 | LAG(SALARY,(2)) | 2 | 기출복원 34회 50번과 유사 |
주관식8 | HEIGHT ~ | ROW_NUMBER '_'(언더바)필수 | |
주관식9 | ROLLBACK | ||
주관식10 | ㄱ : WHERE ㄴ : ORDER BY | ||