kyejin0412 님의 블로그
[TIL] Week 3-1 SQL 라이브세션 - JOIN2 / 파이썬 조건문, 반복문 본문
어느덧 3주차가 시작되었다. 주말에 푹 쉬고 잘 놀고 왔더니 기분이 좋았다.
파이썬 라이브세션이 오늘부터 시작되었다. 오랜만에 vscode를 썼더니 미화가 되었는지 재미있었다.
조코딩님의 파이썬 조건문, 반복문 강의를 들었는데 이해가 쉽게 잘됐다.
전소현 튜터님의 마지막 조인 강의도 너무 좋았다. 믿고 듣는 전소현 튜터님!! 이제 내가 체득할 일만 남았다 하하..
강의 중에 가끔 졸고는 했지만, 무난했던 날이었다.
내일부터는 코드카타가 시작되니까 문제를 열심히 풀어보자! (원래 오늘부터인데 서버에 문제가 생겼는지 못했음..)
[SQL 라이브세션]
1. JOIN 두번째 세션
[JOIN 하는 방법]
1. 공통컬럼 찾기 (이전 포스팅)
2. 공통컬럼 관계찾기 - 뭐가 PK, FK인가?
-> PK와 FK는 테이블 내에 적혀있음. 데이터 엔지니어가 정함. 데이터분석가는 정해진 거 확인해서 쓰면 됨.
- PK(Primary Key. 기본키): 모든 데이터를 식별하는 기준컬럼. 고유값. not null. 테이블 당 하나의 기본키만 가진다.
공통컬럼은 여러개 있을 수 있는데, 공통컬럼이 모두 PK인 것은 아니다.
PK가 있는 테이블이 기준 테이블! - FK(Foreign Key. 외래키. 참조키): PK와 join하기 위한 연결 컬럼. null 가능.
- (참고) 디멘션 테이블: 고유값을 모아놓은 테이블
똑같은 데이터 저장하면 그게 다 비용이고 낭비이기 때문에, 현업에서는 테이블을 나눠놓음. 따라서 조인을 해야 하는 경우가 많이 생김.
3. 적절한 조인 방식 찾기

- INNER JOIN (가장 많이 사용) : 두 테이블에서 일치하는 값을 가진 행을 출력 (교집합)
- LEFT JOIN (가장 많이 사용) : 왼쪽 테이블 (JOIN 윗줄에 쓰여있는 테이블. 기준 테이블)의 모든 행과 오른쪽 테이블 (JOIN 아랫줄에 쓰여있는 테이블)의 일치하는 행을 반환. 일치하는 항목이 없으면 오른쪽 테이블의 열에 대해 NULL 값 출력.
- RIGHT JOIN : 왼쪽 테이블 (JOIN 윗줄에 쓰여있는 테이블)의 일치하는 행과 오른쪽 테이블 (JOIN 아랫줄에 쓰여있는 테이블. 기준 테이블)의 모든 행을 반환. 일치하는 항목이 없으면 왼쪽 테이블의 열에 대해 NULL 값 출력.
LEFT JOIN을 쓴 것과 똑같은 효과이므로 현업에서는 거의 안 씀. - FULL OUTER JOIN : 모든 데이터를 보고싶을 때 사용. 현업에서는 용량과 비용 이슈로 거의 사용하지 않는다! LEFT JOIN 과 RIGHT JOIN 의 합집합.
- 각 테이블에 조건이 있으면 서브쿼리로 처리 후에 JOIN! 이때 가장 안쪽 서브쿼리인 인라인 뷰 먼저 실행된다.
- UNION과 JOIN은 순서 상관없이 함께 사용 가능하다!!
- 뭐부터 해야 할 지 모르겠을 때는 당장 계산할 수 있는, 가장 간단한 연산(=서브쿼리) 부터 작성해보자.
[파이썬 라이브세션]
1. 환경 변수 : PC 어느 폴더에서든 명령어를 빠르게 실행할 수 있게 하기 위해 언어 설치 시 환경변수 설정을 한다.
PC는 명령어가 입력됐을 때, 현재 있는 폴더에서 명령어나 파일이 있는지 확인 후, 없으면 환경변수 PATH 를 훑어본다.
따라서 환경변수를 설정하면, 파이썬 명령어를 내 PC 어느 폴더에서든 실행할 수 있다.
2. 가상환경
프로젝트는 폴더 단위로 관리하게 된다.
프로젝트마다 필요한 라이브러리가 다르거나 같고, 버전이 시점에 따라 달라질 수가 있다.
내 PC에 직접 설치하면 그 버전의 라이브러리만 사용하게 되므로, A 프로젝트에서는 실행됐는데, 새로운 B 프로젝트에서는 실행이 안 될 수가 있다.
이런 불상사를 막기 위해, 프로젝트 폴더 안의 최상위 경로에 가상환경을 구축한다.
내 PC에 직접 라이브러리를 설치하는 것이 아니라 프로젝트 폴더마다의 독립적인 가상환경에 설치함으로써 충돌을 막을 수 있다!
python -m venv [가상환경 이름]
venv\Scripts\activate # WINDOW 가상환경 켜는 명령어. 프로젝트 폴더에 들어가서 코딩하기 전에 바로 켜준다고 생각하자.
deactivate # WINDOW 가상환경 끄는 명령어.
3. F-STRING (파이썬 3.6 이상)
f'문자열 {변수명} 문자열' 형식이다.
1. 문자열 맨 앞에(따옴표앞) f를 붙인다.
2. 사용하고 싶은 변수, 값을 중괄호 안에 넣는다.
3. 이쁘게 출력한다.
출처: https://blockdmask.tistory.com/429 [가면 뒤의 기록:티스토리]
변수를 문자열 사이에 끼워서 출력하고 싶을 때 사용하는 편리한 방법이다.
기존 %포매팅, str.format, + 활용 보다 간편하고 깔끔하다.
name = 'yejin'
age = 26
print(f"안녕하세요, 저는 {name}이고 {age}살입니다.")
--> 결과: 안녕하세요, 저는 yejin이고 26살입니다.
[파이썬 녹화강의]
- 조건문 (if, elif, else)
- pass : 아무것도 안하고 지나간다.
- continue : 가장 안쪽의 반복문의 다음 턴으로 넘어간다.
- break : 가장 안쪽의 반복문의 밖으로 빠져나온다. (다음 턴 남았어도 무시하고 빠져나옴.)
x = 10
y = 5
if x > 5 and y < 10: # 첫번째 조건
print("x는 5보다 크고, y는 10보다 작습니다.")
elif x <= 5 or y > 10: # 두번째 조건
print("x는 5보다 작거나 같거나, y는 10보다 큽니다.")
else: # 그 외 나머지
print("다른 조건")
x = 10
if x > 5:
print("x는 5보다 큽니다.")
if x < 15: # 중첩 조건문
print("x는 15보다 작습니다.")
else:
print("x는 15보다 큽니다.")
else:
print("x는 5보다 작거나 같습니다.")
- 반복문 (while, for)
- while True : 항상 참인 조건
- for 문 : 리스트, 튜플, 문자열의 값을 하나씩 가져와서 for 문을 실행할 수 있음.
range(n,m) 을 써서 n이상 m 미만까지 for 문을 실행할 수 있음. - ctrl + C : 터미널에서 무한반복 코드를 빠져나갈 수 있는 키
for 변수 in 순회할_데이터(리스트,튜플,문자열,range(n,m) 등):
코드_블록
- 여기서 "순회할_데이터"는 리스트, 튜플, 문자열 등과 같은 반복 가능한(iterable) 데이터 타입이 될 수 있습니다.
- "변수"는 각 반복(iteration)마다 현재 값을 가지는 변수입니다.
fruits = ["apple", "banana", "cherry"] # 리스트 순회. fruits = apple, banana, cherry
for fruit in fruits:
print(fruit)
for letter in "hello": # 문자열 순회. letter = h,e,l,l,o
print(letter)
for i in range(5): # range 함수 순회. i = 0~4까지. start 인자 생략하면 인덱스 0부터 시작.
print(i)
# 참고
range(stop)
range(start, stop)
range(start, stop, step) step : 증가할 숫자 간격
# 1부터 시작하여 10 이전까지 2씩 증가하는 정수 시퀀스 생성
for i in range(1, 10, 2):
print(i, end=' ')
# 출력: 1 3 5 7 9
person = {"name": "John", "age": 30, "city": "New York"}
# 딕셔너리 순회. 쌍으로 된 순회데이터가 있을 때, 변수를 쌍에 맞춰서 2개 만들면 각각의 변수로 값이 들어간다.
for key, value in person.items():
print(key, " : ", value)

참고 링크
환경 변수(PATH)란?
목차 환경 변수란? 환경 변수 PATH 환경 변수란? 환경 변수(Environment Variable)란 프로세스가 컴퓨터에서 동작하는 방식에 영향을 미치는, 동적인 값들의 모임이다. 프로세스(Process)는 컴퓨터에서 실
gliver.tistory.com
https://blockdmask.tistory.com/429
[python] 파이썬 f-string (문자열 포매팅 방법 3)
안녕하세요. BlockDMask 입니다. 오늘은 파이썬 문자열 포매팅 방법 % 서식문자, str.format, f-string 이 세개 중 마지막인 f-string에 대해서 알아보려고 합니다.% 서식문자 [바로가기] str.format [바로가기]
blockdmask.tistory.com
'내일배움캠프-데이터분석' 카테고리의 다른 글
| [TIL] Week 3-3 파이썬 리스트, 튜플, 딕셔너리 비교정리 (0) | 2025.11.05 |
|---|---|
| [TIL] Week 3-2 SQL 라이브세션 - 윈도우 함수, WITH, SUBSTRING_INDEX(), REVERSE(), 날짜 함수 / 파이썬 함수 (0) | 2025.11.04 |
| [TIL] Week 2-5 SQL solvesql 코드카타 / 파이썬 리스트, 튜플, 딕셔너리 (0) | 2025.10.31 |
| [TIL] Week 2-4 SQL 라이브세션 - UNION, JOIN1 / 파이썬 데이터 변수와 데이터 타입 / 직무세션 (0) | 2025.10.30 |
| [TIL] Week 2-3 SQL IFNULL(), DATEDIFF() (0) | 2025.10.29 |