본문 바로가기

SQL 공부일지12

SQL 공부 일지 12일차 230901 ## 공부정리 과목2 3장 SQL 최적화 기본 원리 1) 옵티마이저와 실행계획 2) 인덱스 기본 3) 조인 수행 원리 #1 옵티마이저와 실행계획 1 옵티마이저 - SQL문에 대한 최적의 실행방법을 결정하여 실행 계획 도출 - 최적의 실행방법, 실행계획을 짠다 * SQL문 실행 순서 1) 파싱(Parsing) : SQL 문법 검사 및 구문 분석 작업 2) 실행(Execution) : 옵티마이저의 실행 계획에 따라 3) 인출(Fetch) : 데이터를 읽어 전송 2 규칙기반 옵티마이저 - 규칙(우선순위)를 가지고 실행 계획 생성 - 인덱스를 이용한 엑세스 방식이 전체 테이블 엑세스 방식보다 우선 순위가 높음 -> 이용 가능한 인덱스가 존재하면 전체 테이블 엑세스 방식보다 항상 인덱스를 사용하는 실행계획을 생성.. 2023. 9. 1.
SQL 공부 일지 11일차 230830 ## 공부정리 과목2 2장 SQL 활용 4편 7) DCL 8) 절차형 SQL #7 DCL 1 DCL - 유저를 생성하거나 권한을 제어하는 명령어, 보안을 위해 필요 - GRANT : 권한 부여 (SQL -> GRANT 권한 ON 오브젝트 TO 유저명;) - REVOKE : 권한 제거 (SQL -> REVOKE 권한 ON 오프젝트 TO 유저명;) 2 권한 - SELECT, UPDATE, INSERT, DELETE, ALTER, ALL : DML 관련 권한 - REFFERENCES : 지정된 테이블을 참조하는 제약조건을 생성하는 권한 - INDEX : 지정된 테이블에서 인덱스를 생성하는 권한 3 Oracle 기본 유저 종류 유저 역할 SCOTT Oracle 테스트용 샘플 유저 Default 패스워드 : TI.. 2023. 8. 30.
SQL 공부 일지 10일차 230829 ## 공부정리 과목2 2장 SQL 활용 3편 4) 서브쿼리 5) 그룹함수 6) 윈도우함수 #4 서브쿼리 1 서브쿼리 하나의 SQL문 안의 SQL문 단일행 또는 복수행 비교 연산자와 함께 사용 가능 서브쿼리에선 ORDER BY 사용 불가(메인쿼리의 마지막 부분에만 위치 가능) 서브쿼리는 메인쿼리의 테이블의 칼럼 사용 가능(메인쿼리에선 서브쿼리의 칼럼 사용불가) * 서브쿼리가 SQL 문에서 사용 가능한 곳 - SELECT, FROM, WHERE, HAVING, ORDER BY절 - INSERT문의 VALUES절 - UPDATE문의 SET절 - DELECT문 사용 불가 2 동작방식에 따른 분류 서브쿼리의 종류 설명 Un-Correlated(비연관) 서브쿼리 서브쿼리가 메인쿼리 칼럼을 가지고 있지 않는 형태의 .. 2023. 8. 30.
SQL 공부 일지 9일차 230825 ## 공부정리 과목2 2장 SQL 활용 2편 2) 집합 연산자 3) 계층형 질의와 셀프 조인 #2 집합 연산자 1 집합연산자 두 개 이상의 테이블에서 JOIN을 사용하지 않고, 연관된 데이터를 조회하는 방법 집합 연산자는 2개 이상의 질의 결과를 하나의 결과로 만든다 SELECT절의 컬럼 수가 동일해야 하고, 동일 위치 데이터 타입이 상호 호환 가능해야 함 2 집합연산자 종류 집합 연산자 연산자의 의미 UNION 여러 개의 SQL문의 결과에 대한 합집합으로 결과에서 모든 중복된 행은 하나의 행으로 만든다. UNION ALL 여러 개의 SQL문의 결과에 대한 합집합으로 중복된 행도 그대로 결과로 표시된다. 즉, 단순히 결과만 합쳐놓은 것이다. 일반적으로 여러 질의 결과가 상호 배타적(Exculsive)일 .. 2023. 8. 27.
SQL 공부 일지 8일차 230823 ## 공부정리 과목2 2장 SQL 활용 1편 1) 표준 조인 #1 표준 조인 1 STANDAR SQL (표준 SQL) 개요 ① 표준 SQL의 기능 STANDARD JOIN 기능 추가 (CROSS, OUTER JOIN 등 새로운 FROM 절 JOIN 기능들) SCALAR SUBQUERY, TOP-N QUERY 등의 새로운 서브쿼리 기능들 ROLLUP, CUBE, GROUPING SETS 등의 새로운 리포팅 기능 WINDOW FUCTION 같은 새로운 개념의 분석 기능들 ② 일반 집합 연산자 → 현재 SQL UNION 연산 -> UNION 기능 : 합집합 INTERSECTION 연산 -> INTERSECT 기능 : 교집합 DIFFERENCE 연산 -> EXCEPT 기능으로 (Oracle은 MINUS) : 차.. 2023. 8. 23.
SQL 공부 일지 7일차 230820 ## 공부정리 과목2 1장 SQL 기본 3편 7) GROUP BY, HAVING 절 8) ORDER BY 절 9) JOIN(조인) #7 GROUP BY, HAVING 절 1 집계함수 여러 행들의 그룹이 모여서 그룹 당 단 하나의 결과를 돌려주는 다중행 함수 GROUP BY 절은 행들을 소그룹 SELECT 절, HAVING 절, ORDER BY 절에 사용 집계함수명 (ALL | Distinct 칼럼) 주로 숫자형에서 사용, MIN MAX COUNT는 문자 날짜도 적용가능 2 집계함수의 종류 3 GROUP BY 절 FROM 절과 WHERE 절 뒤에 오며, 데이터들을 작은 그룹으로 분류하여 소그룹에 대한 항목별 통계 정보를 얻을 때 사용 ROLLUP이나 CUBE에 의한 소계가 계산된 결과에는 GROUPING(.. 2023. 8. 20.