반응형

# SELECT 문장 실행 순서

  • GROUP BY 절, ORDER BY 절이 같이 사용될 때 SELECT문은 아래와 같이 6개의 절로 구성되어 아래의 순서로 실행된다. (옵티마이저가 문법SYNTAX), 의미(SEMANTIC)적 에러를 점검하는 순서이자 실행순서)
  1. FROM 절 : 조회 대상 테이블 참조
  2. WHERE 절 : 조회 대상 데이터 아니면 제거
  3. GHROUP BY 절 : 행 소그룹화
  4. HAVING 절 : 그룹핑된 값의 조건에 맞는 것만 출력
  5. SELECT 절 : 데이터 값을 출력/계산
  6. ORDER BY 절 : 데이터 정렬
반응형

'자격증 > SQLD & SQLP 자격증' 카테고리의 다른 글

ON 조건과 WHERE 조건, USING 조건  (0) 2022.05.12
조인, 동등조인, 비동등 조인  (0) 2022.05.11
옵티마이저  (0) 2022.05.09
서브쿼리  (0) 2022.05.09
관계형 데이터베이스 주요 용어  (0) 2022.04.22
반응형

# 옵티마이저

  • SQL의 실행 방법인 실행계획을 생성하는 데이터베이스 엔진.
  • SQL 문에 대한 최적의 실행 방법을 결정, SQL 실행 속도에 가장 큰 영향을 미친다.
  • 유형 : 규칙 기반 옵티마이저, 비용 기반 옵티마이저

## 규칙 기반 옵티마이저 (RBO : Rule Based Optimizer)

  • 사전에 정의된 SQL 규칙의 우선순위로 실행계획을 생성하는 방식.
  • 사용 가능한 인덱스 유무, 연산자 종류 등을 참조하여 실행계획 생성.

## 비용 기반 옵티마이저(CBO : Cost Based Optimizer)

  • 통계 정보를 활용, SQL 처리 시간 및 자원 사용량 등을 계산, 효율적인 실행계획을 생성.
  • 데이터 건수를 예측하지 못하는 RBO 단점을 개선하기 위해 사용.
  • 통계정보가 없는 경우 불확실한 실행계획 생성 가능성 존재하므로 최신 통계정보 유지하는게 중요.
  • 대부분의 상용 DBMS는 비용 기반 옵티마이저 방식 사용.
반응형
반응형

# 서브쿼리

  • 하나의 SQL문 안에 포함되어 있는 내부 SQL을 의미.
  • 메인 쿼리가 서브 쿼리를 포함하는 형태.
  • SELECT 절, FROM 절, WHERE 절, HAVING 절, ORDER BY 절, INSERT 문의 VALUES 절, UPDATE 문의 SET 절에 사용 가능.
  • 일반적으로 서브 쿼리는 괄호로 감싸고, 단일 또는 다중행 비교 연산자와 함께 사용.
반응형
반응형

# 관계형 데이터베이스 주요 용어

테이블

  • 같은 속성을 공유하는 행(Row) 들의 모임.
  • 행고과 컬럼의 2차원 구조를 가진 데이터 저장소.

열(Column)

  • 테이블의 세로 방향.
  • 각각의 열은 유일한 이름을 가지고 있고, 자신만의 데이터 타입을 가진다.
  • 속성(Attribute).

행(Row)

  • 테이블에서 가로 방향.
  • 관계된 데이터의 묶음.
  • 튜플(Tuple) 또는 레코드(Record).

값(Value)

  • 각각의 행과 열에 대응하는 값.

키(Key)

  • 테이블에서 행의 식볋자로 이용되는 열.
  • 기본키(Primary Key).

관계(Relationship)

  • 테이블 간의 관계.
  • 일대일, 일대다, 다대다.
반응형

+ Recent posts