관계 대수와 연산을 배워야 하는 이유?
- SQL은 관계 대수로 부터 시작한 프로그램 언어이다.
- 집한 연산 및 관계 대수를 이해해야 더 효율적인 쿼리문을 작성할 수 있다.
- 복잡한 쿼리일 수록 관계 대수를 통한 학습이 빛을 바라게 된다.
Union
- 두 테이블에서 합집합을 이끌어내는 연산자이다.
- U로 표기된다.
Cartesian Product
- 두 테이블에서 모든 경우를 이어 붙인 연산자이다.
- X로 표기된다.
Select
- 테이블에서 행을 추출하는 관계 연산자이다.
- 조건에는 비교 연산자가 들어갈 수 있다.
- 조인 전에 잘 수행해서 row 개수를 줄여야 성능 향상에 좋음
Project
- 테이블에서 열을 추출하는 관계 연산자이다.
- 중복행을 제거한다.
- select 먼저하고 project 해야 한다. (조건 때문에)
Join
1. 세타조인
- cartesian product에서 select 조건이 추가된 경우
- 공통 속성이 있어야 함
2. 동일조인
- 세타조인 중 연산이 =일 경우에만 해당
3. 자연조인
- 동일 조인에서 조건으로 들어간 열이 제거되어 하나만 나오게 함
- 기본적으로 조인을 말할 때 자연조인을 말하는 것
4. 왼쪽(오른쪽) 외부 조인
- 왼쪽(오른쪽)을 기준으로 대응되는 튜플값을 가져옴
5. 양쪽 외부 조인
- 양쪽을 기준으로 대응되는 튜플값을 가져옴
Group
- 그룹 연산과 통계 연산을 수행
Rename
- 수식 결과를 테이블로 저장
- 서브쿼리가 예가 됨
프로그래머스 스터디 참여
(https://programmers.co.kr/learn/courses/13484)