문과 코린이의, [C#] 기록/문과 코린이의, [SQL] 기록

[문과 코린이의 IT 기록장] MSSQL - 집합 연산자 (관계형 데이터베이스(DBMS) vs 집합, 합집합, 차집합, 교집합, 곱집합, 프로젝션, 셀렉션, 조인/디비전)

벼리네 2022. 1. 19. 13:34
반응형

[문과 코린이의 IT 기록장] MSSQL - 집합 연산자 (관계형 데이터베이스(DBMS) vs 집합, 합집합, 차집합, 교집합, 곱집합, 프로젝션, 셀렉션, 조인/디비전)

[문과 코린이의 IT 기록장] MSSQL - 집합 연산자 (관계형 데이터베이스(DBMS) vs 집합, 합집합, 차집합, 교집합, 곱집합, 프로젝션, 셀렉션, 조인/디비전)


< 참고 영상 강의 >

MSSQL Server 2016 기반의 데이터베이스 입문에서 활용까지 Part.1 - 인프런 | 강의 (inflearn.com)

 

MSSQL Server 2016 기반의 데이터베이스 입문에서 활용까지 Part.1 - 인프런 | 강의

데이터베이스 구축에서부터 테이블 생성, 각종 SQL 쿼리문을 사용해서 데이터베이스 내 데이터를 조작, 변경할 수 있습니다., MSSQL로 시작하는 데이터베이스 학습 -데이터를 다양하게 조작, 변경,

www.inflearn.com

2022.01.19 - [문과 코린이의, [SQL] 기록] - [문과 코린이의 IT 기록장] MSSQL - SQL 데이터베이스 입문(SQL Server 설치 폴더, SQL Server에서 사용하는 샘플 데이터베이스, Pubs 샘플 데이터베이스, SQLCMD명령어로 DB 생성하기, Pubs 샘플 데이터베이..

 

[문과 코린이의 IT 기록장] MSSQL - SQL 데이터베이스 입문(SQL Server 설치 폴더, SQL Server에서 사용하는

[문과 코린이의 IT 기록장] MSSQL - SQL 데이터베이스 입문(SQL Server 설치 폴더, SQL Server에서 사용하는 샘플 데이터베이스, Pubs 샘플 데이터베이스, SQLCMD명령어로 DB 생성하기, P..

vansoft1215.tistory.com

2022.01.19 - [문과 코린이의, [SQL] 기록] - [문과 코린이의 IT 기록장] MSSQL - Databse 학습 가이드 및 개론(DataBase 학습 가이드, DBMS란?, DBMS 실습)

 

[문과 코린이의 IT 기록장] MSSQL - Databse 학습 가이드 및 개론(DataBase 학습 가이드, DBMS란?, DBMS 실습)

[문과 코린이의 IT 기록장] MSSQL - Databse 학습 가이드 및 개론(DataBase 학습 가이드, DBMS란?, DBMS 실습) < 참고 강의 영상 > MSSQL Server 2016 기반의 데이터베이스 입문에서 활용까지 Par..

vansoft1215.tistory.com

2022.01.19 - [문과 코린이의, [SQL] 기록] - [문과 코린이의 IT 기록장] MSSQL - 기본키, 외래키 ( 기본키 (Primary Key) , 외래키 (Foreign Key), 관계형 데이터베이스란?)

 

[문과 코린이의 IT 기록장] MSSQL - 기본키, 외래키 ( 기본키 (Primary Key) , 외래키 (Foreign Key), 관계형

[문과 코린이의 IT 기록장] MSSQL -  기본키, 외래키 ( 기본키 (Primary Key) , 외래키 (Foreign Key), 관계형 데이터베이스란?) < 참고 강의 영상 > MSSQL Server 2016 기반의 데이터베이스..

vansoft1215.tistory.com


1. 관계형 데이터베이스(DBMS) vs 집합

- DBMS에서 여러 테이블간의 데이터 조작을 하는데 있어, 집합의 개념이 사용이 되어진다.

 ex. 테이블과 테이블 사이의 데이터들을 합치고, 빼고, 곱하는 등의 데이터 조합이 이루어짐.

 

- 따라서 DB 연산자에 사용되는 영어 단어에 대해 잘 외워두는 것이 좋을 것이다.

- 관계형 데이터베이스는 수학의 집합 연산을 기반으로 데이터를 조작한다.

 * 집합의 개념

 - 일반 집합 연산자 : 합집합(union), 차집합(difference), 교집합(intersection), 곱집합(cartesian product)

 - 관계형 데이터베이스 고유 연산자 : 프로젝션(Projection), 셀렉션(Selection), 조인(Join), 디비전(Division)

 


2. 합집합 (union)

- 합집합은 두 개의 테이블(표)에 들어있는 모든 레코드(행)을 출력한다. 


3. 차집합 (difference)

- 두 개의 테이블(표) 중에 어느 한 곳에만 들어있는 데이터를 출력한다. 

- 둘 중에 어느 테이블(표)를 기준으로 잡느냐에 따라 결과가 달라진다.


4. 교집합 (intersection)

- 두 개의 테이블(표) 모두에 공통적으로 들어있는 데이터를 나타낸다.


5. 곱집합(cartesian product)

- 곱집합은 두 개의 테이블(표)을 조합하여, 만들 수 있는 모든 경우의 수를 나타낸다.

결과물을 보고, 어떤 곱집합인지를 파악하는 능력도 필요함.

 


6. 프로젝션 (Projection)

- 테이블(표) 안의 특정 컬럼(열)을 출력해내는 연산이다.


7. 셀렉션 (Selection)

- 테이블(표) 안의 특정 레코드(행)을 뽑아내는 연산이다.


8. 조인(Join) / 디비전(Division)

1) 조인(Join)

- Join 연산은, 테이블(표)를 연결하여 이어주는 것이다.

- 즉 공통 속성을 중심으로 두 표를 하나로 합쳐서 새로운 데이터 표로 생성해낸다.

 * 이 외에도 Join은 다양한 종류를 가지고 있음

연산
결과

 

2) 디비전(Division)

- Division 연산은, 두 테이블의 특별한 포함 관계를 통해서 자료를 추출해내는 연산이다.

연산 - 조건들에 포함되는 날짜를 뽑아온 결과를 얻어내고자 함.

* 판매처테이블의 데이터들이 기본적으로 매출테이블에 모두 담겨있어야 함.

결과 - 이 값을 뽑아내기 위해서 Division 연산을 수행한 것

 


* 유의사항
- 아직 공부하고 있는 문과생 코린이가, 정리해서 남겨놓은 정리 및 필기노트입니다.
- 정확하지 않거나, 틀린 점이 있을 수 있으니, 유의해서 봐주시면 감사하겠습니다.
- 혹시 잘못된 점을 발견하셨다면, 댓글로 친절하게 남겨주시면 감사하겠습니다 :)
반응형