로운's 기술노트

[2주차] 프로그래밍 기초 주차 (3/5) 본문

내배캠_데이터분석가_'24.04~08/회고

[2주차] 프로그래밍 기초 주차 (3/5)

로운's 2024. 4. 24. 17:07
ㅇ 오늘 목표 : 데이터 리터러시 수강 + 세션 및 과제 + 생활코딩 DB 3, 4강

 

읭?

 

 

 

오늘 JOIN 세션을 듣고 과제를 진행하던 중, 신기한 현상을 발견했다.

지금까지는 단순히 LEFT JOIN을 하면 기준이 되는 왼쪽(첫번째) 테이블이 가진 열을 상한선으로 열의 수가 더 늘어날 수 없다고 생각했으나, 실제로는 그보다 많이 늘어났다.

 

확인해보니, (이유는 <예시>를 참조)

이런 데이터 뻥튀기는 현업에서도 발생할 수 있기 때문에 데이터를 JOIN하기 전에 각 테이블에 대한 파악이 선행되어야 한다. 특히 매출과 같은 '숫자'를 다룰 경우 더 주의해야 한다.

 

 

 

 

<예시>

먼저, 위와 같이 '결제내역'과 '장바구니'라는 두 테이블이 있다고 가정해보자.

 

(보통 날짜가 PK나 FK로 지정될 일은 잘없겠지만)

일단 결제 내역은 1건의 열, 장바구니 테이블은 3건의 열이 있다.

 

이 두 테이블을 결제내역을 기준으로 LEFT JOIN 할 경우, 아래와 같이 총 3건의 열이 발생된다.

결론 : LEFT JOIN을 해도 기준 테이블보다 데이터 양이 많아질 수 있다.

 

 

 

 

 

 

 

 

 

ㅇ 내일 목표 : SQL코드카타 3문제 + 세션 및 과제 + 생활코딩 DB 5, 6강

 

Comments