셀렉션은 WHERE, 프로젝션은 SELECT 절, 조인은 JOIN, 디비전은 나누기에 해당한다.
왜 그런지까지
관계형 데이터베이스의 뿌리인 관계 대수에는 일반 집합 연산자(합집합·교집합·차집합·곱집합)와 순수 관계 연산자(셀렉션·프로젝션·조인·디비전)가 있다. 셀렉션은 행을 고르는 것이라 WHERE 절이 되고, 프로젝션은 열을 고르는 것이라 SELECT 뒤의 열 목록이 된다. 조인은 두 릴레이션을 이어 붙이는 것이고, 디비전은 '모두 만족하는 것만 남기기'로 SQL 에는 전용 문법이 없어 NOT EXISTS 를 두 번 겹쳐 흉내 낸다.
관계 대수와 SQL
| 연산자 | 하는 일 | SQL 에서 |
|---|---|---|
| 셀렉션 | 조건에 맞는 행 고르기 | WHERE |
| 프로젝션 | 필요한 열 고르기 | SELECT 열목록 |
| 조인 | 두 표를 이어 붙이기 | JOIN … ON |
| 디비전 | 모두 만족하는 것만 | NOT EXISTS 중첩 |
셀렉션 vs 프로젝션
셀렉션은 조건에 맞는 행을 고르는 것(WHERE)이고, 프로젝션은 필요한 열만 고르는 것(SELECT 절)이다.
순수 관계 연산자 vs 일반 집합 연산자
순수 관계 연산자는 셀렉션·프로젝션·조인·디비전 넷이고, 합집합·교집합·차집합·곱집합은 일반 집합 연산자다.
넣어 두면 오늘 · 1일 · 3일 · 7일 · 14일 · 30일 간격으로 다시 물어봅니다