프로그래밍/SQLD 11

DB 자격증 SQLD 46회 결과 합격!!!!!

블로그에는 시험을 본 직후 후기를 남기지 않았었지만 저번에 시험쳤던 리눅스 마스터 2급보다는 열심히 준비했었기에 자신 만만하게 시험을 치러 갔었으나 시험지를 보자마자 아 큰일났다라는 생각밖에 안들었고 불안해서 따로 블로그에 언급도 안하고 있었다. 코딩 입문 반년차의 입장에서 리눅스마스터도 학기중에 배워둔게 그냥 두면 아무런 성과나 증거도 없이 없어진다는게 아까워서 자격증을 따게 된거고 SQLD도 어차피 다음 학기에(현 학기) 배우게 될텐데 방학때 할것도 없고 미리 따놓고 2학기땐 편하게 공부하자라는 가벼운 마음으로 도전하게 됐다. 자격증 준비는 유명한 문제집 'SQL 자격검정 실전문제'만 사놓고 맨 땅에 해딩했었는데 다른 블로거들은 다 저 책과 시중에 떠돌아다니는 요약본만으로도 충분하다고 해서 나도 그렇..

10. SQLD 마지막 총 정리 - 최후의 발악

큰일이다 아직 1회독 밖에 하지 못했지만 생각보다 조졌다는 생각이 안들어서 미루고 미루다 결국 여기까지 오게 되었다. 진짜 SQLD를 발라버렸는지 내가 발라졌는지는 9월의 31일에 나올 뿐 일단 마지막 발악으로 총 정리를 하기로 했다. 중간에 정신차리고 한번 sql 총 정리 영상을 찾아보게 됐는데, 단 2개의 영상으로 많은 사람을 구원했던 김강민SQLP영상을 쭉 보니 아 생각보다 1회독으로 머리에 들어온게 야간 있구나를 알게되었고(그냥 아 이거 봤었는데 정도) 또 처음보는 것들도 좀 있어서 당황했다. 이상 잡담은 거두절미하고 마지막 발악 가자! 명령문 개괄 순서 : FROM - WHERE - GROUP BY - HAVING - SELECT - ORDER BY 종류 : DML - Select, Insert..

9. 2과목 제 3장 SQL 최적화 기본 원리

옵티마이저 - 사용자가 질의 한 SQL 문에 대해 최적의 실행 방법을 결정하는 역할 수행 규칙기반 옵티마이저 (RBO : Rule Base 옵티마이저) - 우선순위를 가지고 생성한다. 우선 순위가 높은 규칙이 적은 일량으로 해당 작업을 수행한다고 판단한다. 행에 대한 교유 주소를 사용 -인덱스 스캔이 항상 유리하다고 판단 -> 적절한 인덱스가 존재하면 항상 인덱스를 사용하려고 함 비용기반 옵티마이저(CBO : Cost Base 옵티마이저) - 현재 대부분의 DB에서 사용. SQL문을 처리하는데 필요한 비용이 가장 적은 실행계획을 선택하는 방식,객체 통계정보와 시스템 통계정보 등을 이용한다. - *비용이란 SQL문을 처리하기 위해 예상되는 소요시간 또는 자원 사용량을 의미. 인덱스 - 원하는 데이터를 쉽게..

8. 2과목 제 2장 SQL 활용 (3) - 서브쿼리 Subqauery, 윈도우 함수

서브 쿼리 - 쿼리안에 있는 또 다른 쿼리 스칼라 서브쿼리 (Scalar Subaquery) - (주로 SELECT절에 사용) 한 행, 한 칼럼만을 반환하는 서브쿼리, 하나의 칼럼처럼 사용 됨 SELECT ..., (SELECT COUNT(*) FROM 부양가족 Y WHERE Y.사원번호 = B.사원번호) AS 부양가족수 //칼럼을 다른 테이블에서 가져올 때 등등 사용 FROM ..., 뭔지 감 못잡다가 정미나님 영상으로 이해됨 뷰 - DB의 SELECT 문을 저장한 OBJECT, 쿼리문에서 테이블처럼 쓰임 테이블은 실제 데이터로 가지고 있는 반면 뷰는 실제 데이터를 가지고 있지 않다. 가상 테이블이라고도 함 //아래의 인라인 뷰의 테이블과 같이 임의로 만든 가상 테이블 -> 뷰 사용의 장점 독립성 - ..

7. 2과목 제 2장 SQL 활용 (2) - 계층형 데이터

계층형 데이터란 동일 테이블에 계층적으로 상위와 하위 데이터가 포함된 데이터를 말한다. 예를들어, 사원 테이블에서는 사원들 사이에 상위 사원(관리자)과 하위 사원 관계가 존재하고 조직 테이블에서는 조직들 사이에 상위 조직과 하위 조직 관계가 존재한다. 계층형 질의 테이블에 계층형 데이터가 존재하는 경우 데이터를 조회하기 위한 구문 START WITH - 계층 구조 전개의 시작 위치 지정 CONNECT BY - 다음에 전개될 자식 데이터 지정, 부모&자식의 관계 지정 ㄴ PRIOR - 현재 읽은 칼럼을 지정한다. PRIOR 자식 = 부모 형태를 사용하면 계층구조에서 부모 데이터에서 자식 데이터 (부모 -> 자식)방향으로 전개하는 순방향 전개를 한다. PRIOR 부모 = 자식 (자식 -> 부모)방향으로 전개..

6. 2과목 제 2장 SQL 활용 (1) - alias

분명 저번 포스팅에선 어..? 생각보다 할만한데?를 느꼈었던 반면, SQL 활용편에 들어가지마자 뭔가가 단단히 잘못되었다는것을 느꼈다. SQL 기본편 오답노트를 끝내고 시간이 약 1시간가량 남아 한번 찍먹이라도 해보자 해서 바로 활용편을 들어봤으나 설명을 너무 잘하신다고 생각했던 전광절님은 설명을 어렵게 하시는 분으로 마음속 평가가 떡락해버렸고 어디서부터 어떻게 건들여야 할지 전혀 모르겠어서 진짜 이번에 따는걸 포기해야하나라는 생각밖에 안들었다. 그래도 일단 되든안되든 마쳐보자라는 생각에 꾸역꾸역 문제풀이를 듣고 그 유명하신 정미나님의 풀이까지 듣고서야 아 이런식으로 되는거구나 하고 이해가 조금씩 되었다. 물론 모든걸 하나하나 짚으면서 넘어가진 않았고 이번주 그니까 오늘, 내일로 기준 가이드? 외워야 할..

5. 2과목 제 1장 SQL 기본 (3) 43~64

어제 문제 풀고 이해하고 정리하는데 아무리 2주라는 시간이 있어도 그렇지 기한안에 이게 가능한가 싶었지만 오늘 정신차리고 다시 정리해보니 괜찮은거같다가도 미래는 아직 아무도 모른다! SQL 문장 표현 SEARCHED_CASE_EXPRESSION ㄴCASE WHEN LOC = 'NEW YORK' THEN 'EAST' when 이 앞에오고 ' = '가 있음 SIMPLE_CASE_EXPRESSION ㄴCASE LOC WHEN 'NEW YORK' THEN 'EAST' when이 뒤에오고 ' = '가 없음 이해하는데 살짝 애를 먹었던 222 COALESCE 함수의 핵심이니 잘 기억해두도록 하자 이제까지 했던것처럼 그냥 글로 설명해보려고 했으나 설명이 너무 복잡해져서 교재 첨부 SELECT COUNT(컬럼) => ..

4. 2과목 제 1장 SQL 기본 (2) 20~42

SQLD 준비 글들은 모두 SQL 자격검정 실전문제를 풀며 정리한 내용이므로 최대한 정리해보려고는 하지만 대체적으로 단원 등이 맞지 않을 수 있음에 유의! 생각보다 양이 방대해 이게 될까 싶지만 한번 시도는 해 보자규요!! #대문자로 쓴 건 형식, 소문자는 테이블이나 칼럼에 따라 바뀔 수 있음을 표시. INSERT INTO table_name VALUES (1, 100) 이 SQL문이 틀린 이유는 테이블에 있는 칼럼이 3개인데 2개만 풀면서 어느 칼럼인지 표시하지 않았기 때문이다. 답이 되려면 INSERT INTO table_name (id, amt) VALUES (1, 100) 로 작성해야 한다. 이때 모든 칼럼을 다 작성하였을 때, 위와 같이 작성하지 않아도 됨 *칼럼들 중 NOT NULL인 칼럼은 ..

3. 2과목 제 1장 SQL 기본 (1), 알아야 할게 너무 많다ㅠ

최대한 인터넷에 떠도는 요점정리나 SQL 개발자 스터디 교재로 이해한다음에 SQL 자격검정 실전문제를 풀어보려고 했는데, 일단 되든 안되든 가벼운 마음으로 풀어봤더니 64개 중에서 21개 맞혔다ㅋㅋㅋ 다른 유튜브 강의들은 너무 길고 메모하면서 듣는다해도 시간만 날릴꺼같아서 일단 풀어봤는데 해도 너무한다 진짜 ㅋㅋㅋㅋㅋ 2과목에도 1과목때 했던 것처럼 모르는 것들은 정답해설을 보면서 해보려했으나 이번과목에서부턴 어림도없었고 이걸 어떻게 해야하나 이곳저곳 찾아다니던 끝에 전광철님의 노랭이 문제풀이를 보게됐는데 분명 1과목풀때도 이해못하겠는 유형이 있었을때도 몇번 찾아보게 됐지만 봐도 전혀 이해못했었는데 설명이 좋아지신건지 2과목부턴 이해가 너무 잘됐다. 그리 어려운 시험이 아니기때문에 요점정리만 봐도 충분하..

2. 1 과목 제 2장 데이터 모델과 성능

큰일이다 분명 여유를 두고 준비하려고 했으나 어느덧 시험 2주전이다. 성능데이터모델링이란? 설계단계의 데이터 모델링 때무터 성능과 관려노딘 사항이 데이터 모델링에 반영될 수 있도록 하는 것이다. -정규화 중복을 최소화 하도록 설계된 DB -반정규화(비정규화) 읽는 시간을 최적화 하도록 설계된 DB -트랜젝션 DB 상태를 변환 시키기 위해 수행하는 작업단위 ex)sql 질의어를 통해 DB에 접근 -칼럼 관계형 DB테이블에서 특정한 단순 자료형의 일련의 데이터 값과 테이블에서의 각 열을 의미 -파티셔닝 논리적으로는 하나의 테이블이지만 물리적으로는 여러 개의 테이블로 분리하여 데이터 액세스 성능도 향상시키고, 데이터 관리방법도 개 선할 수 있도록 테이블에 적용하는 기법 함수종속이란? (many to one) ..