# Work/Data

[SQLD] SQL 기본 구조 : SQL 기본 및 활용 / SQL 기본

im-jamie 2023. 2. 21. 22:27

SQLD 시험 내용
(a) 데이터 모델링의 이해 (출제 비중 20% : 10문제, 20점)
- 데이터 모델링의 이해 : 데이터모델의 이해 / 엔터티 / 속성 / 관계 / 식별자
- 데이터 모델과 성능 : 정규화와 성능 / 반정규화와 성능 / 대용량 데이터에 따른 성능 / DB 구조와 성능 / 분산 DB 데이터에 따른 성능
(b) SQL 기본 및 활용 (출제 비중 80% : 40문제, 80점)
- SQL 기본 : 정보 요구 사항 / DDL / DML / TCL / WHERE / FUNCTION / GROUP BY, HAVING / ORDER BY / JOIN
- SQL 활용 : 표준 조인 / 집합 연산자 / 계층형 질의 / 서브쿼리 / 그룹함수 / 윈도우 함수 / DCL / 절차형 SQL
- SQL 최적화 기본 원리 : 옵티마이저와 실행 계획 / 인덱스 기본 / 조인 수행 원리


1. 관계형 데이터베이스와 SQL

데이터 모델과 관계형 데이터 베이스

- 데이터 모델링의 결과물인 데이터 모델을 기반으로 관계형 데이터 베이스가 구축된다.

ER모델  관계형 데이터 베이스
엔터티 테이블
애트리뷰트/속성 칼럼
관계 외부 키 (FK) 제약조건
식별자  기본 키 (PK) 제약조건

 

테이블 구조 :

테이블은 데이터를 저장하기 위한 2차원 구조의 객체. 엔터티가 물리적으로 구현된 것으로 관계형 데이터 베이스의 가장 기본적인 구성 요소이다.

- 칼럼 : 속성이 물리적으로 구현된 것으로, 테이블의 세로 구조에 해당

- 로우 : 테이블에 저장된 개별 데이터로, 데이터 조회 및 조작의 대상

deptno dname loc  
10 a 0.1 로우
20 b 0.2 로우
30 c 0.3 로우
    칼럼  

 

SQL : 

관계형 데이터 베이스의 표준 언어이다. 구조적이고, 집합적이고, 선언적인 언어다.

SELECT 데이터베이스에 저장된 데이터를 조회화는 명령문이다.
DML (Data Manipulation Language) 데이터를 조작 (입력, 수정, 삭제)하는 명령문
TCL (Transaction Control Language) 논리적인 작업 단위인 트랜잭션을 제어하는 명령문 (Commit, Rollback)
DDL (Data Definition Language) 데이터의 구조를 정의 (생성, 변경, 삭제)하는 명령문
DCL (Data Control Language) 데이터베이스 객체에 대한 권한을 부여/회수하는 명령문 (Grant, Revoke)

* Select도 DML 속하는 것으로 기억하기!


1. 데이터 조작어에 해당하지 않는 명령어 : Alter -> Alter는 데이터 정의어이다. 

데이터 조작어 (DML) : Insert, Update, Delete

데이터 정의어 (DDL) : Create, Alter, Drop, Rename

데이터 제어어 (DCL) : Grant, Revoke  (제어어는 '권한' 관련)