본문 바로가기

sql34

SQL 정리 7일차 SubQUERY 7.1 SUBQERY의 개념 하나의 SELECT문 안에 포함되어 있는 또 다른 SELECT 문장 SubQUERY는 괄호로 묶여 있어야 한다 SubQUERY구문에서는 ORDER BY절 포함 불가 SubQUERY는 연산자의 오른쪽 SubQUERY에서 사용할 수 있는 연산자의 종류 단일행 연산자 = , > , >= , < , (SELECT AVG(salary) FROM s_emp WHERE dept_id = 113); 7.7 CREATE절에서의 SubQUERY CREATE TABLE emp_113 (id, name, mailid, start_date) AS SELECT id, name, mailid, start_date FROM s_emp WHERE dept_id = 113; 테이블을 생성할 때 이미 만들어져.. 2023. 8. 25.
SQL튜닝 - Chapter06.DML 튜닝 DML 성능에 영향을미치는 요소 ( DML : Insert + Delete + Update ) - 인덱스 - 무결성 제약 - 조건절 - 서브쿼리 - Redo 로깅 - Undo 로깅 - Lock - 커밋 테이블에 레코드를 입력하면, 인덱스에도 입력. 테이블은 Freelist를 통해 입력 더보기 Freelist : 테이블마다 데이터 입력이 가능한(여유 공간이 있는) 블록 목록을 관리 인덱스 개수가 DML 성능에 미치는 영향이 매우 큰 만큼, 인덱스 설계에 심혈을 기울여야 한다. 핵심 트랜잭션 테이블에서 인덱스 하나라도 줄이면 TPS(Transcation Per Second)는 그만큼 향상된다. 무결성 제약과 DML 성능 데이터베이스에 논리적으로 의미 있는 자료만 저장되게 하는 데이터 무결성 규칙으로는 네 가.. 2023. 8. 23.
SQL튜닝 - Chapter05. 소트 튜닝 소트 수행 과정 소트는 기본적으로 PGA에 할당한 Sort Area에서 이루어진다 . Sort Area가 다 차면 디스크 Temp 테이블 스페이스를 활용한다. Sort Area에서 작업을 완료할 수 있는지에 따라 소트를 두 가지 유형으로 나뉨 메모리 소트(In - Memory Sort ) : 전체 데이터의 정렬 작업을 메모리 내에서 완료하는 것을 말하며, 'Internal Sort' 라고도 한다. 디스크 소트(To - Disk Sort ) : 할당받은 Sort Area 내에서 정렬을 완료하지 못해 디스크 공간까지 사용하는 경우를 말하며, 'External Sort' 라고도 한다. 소트 연산은 메모리 집약적 ( Memory - intensive ) 일 뿐만 아니라 CPU 집약적 ( CPU - intensi.. 2023. 8. 22.
SQL튜닝 -Chapter04.조인튜닝 -4- 서브퀴리 조인 옵티마이저가 서브쿼리에 대해 다양한 형태로 쿼리 변환을 시도하므로 서브쿼리 조인을 이해하는 출발점은 쿼리 변환에서 찾아야 한다. 쿼리 변환(Query Transformation) : 비용을 평가하고 실행계획을 생성하기에 앞서 사용자로부터 전달받은 SQL을 최적화에 유리한 형태로 변환하는 작업. 옵티마이저가 SQL을 분석해 의미적으로 동일하면서도 더 나은 성능이 기대되는 형태로 재작성 하는 것. 서브쿼리 변환이 필요한 이유 하나의 결과집합을 얻기 위해 SQL을 여러 가지 다른 형태로 표현할 수 있고, 어떤 것을 선택하느냐에 따라 성능도 다를 수 있기 때문이다. 서브쿼리는(Subquery)는 하나의 SQL문 안에 괄호로 묶은 별도의 쿼리 블록을 말한다. DBMS마다 조금씩 다르게 분류하는데 오라클은 세 가지.. 2023. 8. 22.