제로베이스 데이터 취업 파트타임/100일 챌린지_일일 학습 일지

제로베이스 데이터 파트타임 스쿨 학습 일지 [25.05.29]

김뚱입니다 2025. 5. 29. 03:00

[강의 요약]

[Part 05. SQL_ Ch09. Join] 강의 수강

클립 03~11까지 수강하였음

🐢 100일 챌린지 🔥 : [▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰                                   ] 74/100일 (74%)

오늘은 실습 강의가 대부분이어서, 글로 정리할 내용은 적은 편이다.

 

 

[Join 문제]

▶ 문제 1

snl_show에 출연한 celeb 중 영화배우나 텔런트가 아닌 연예인의 아이디, 이름, 직업, 시즌, 에피소드를 검색하시오.

 

[풀이 SQL]

SELECT c.id, c.name, c.job, s.season, s.episode
FROM celeb c
JOIN snl_show s ON c.name = s.name
WHERE c.job NOT LIKE '%영화배우%'
  AND c.job NOT LIKE '%텔런트%';
  • JOIN으로 celeb ↔ snl_show 연결
  • 이름 기준 매칭 : ON c.name = s.name
  • NOT LIKE을 두 번 사용해 직업명이 영화배우/텔런트를 포함하지 않는 경우 필터링

 

 

▶ 문제 2

snl_show에 출연한 celeb 중, 작년 9월 15일 이후 출연했거나

소속사 이름이 ‘엔터테이먼트’로 끝나지 않고, 직업이 영화배우나 개그맨이 아닌 사람

아이디, 이름, 직업, 소속사를 검색하시오.

 

[풀이 SQL]

SELECT c.id, c.name, c.job, c.agency
FROM celeb c
JOIN snl_show s ON c.name = s.name
WHERE (
    s.broadcast_date > '2022-09-15'
    OR (
        c.agency NOT LIKE '%엔터테이먼트'
        AND c.job NOT LIKE '%영화배우%'
        AND c.job NOT LIKE '%개그맨%'
    )
);
  • broadcast_date > '2022-09-15' : 최근 출연자 조건
  • NOT LIKE '%엔터테이먼트' : 소속사 이름이 특정 패턴이 아님
  • job NOT LIKE을 두 번 사용해서 ‘영화배우’, ‘개그맨’이 아닌 직업 필터링
  • OR 조건으로 두 그룹의 조건 중 하나라도 만족하면 결과에 포함

 

 

▶ 요약

개념 설명 예시
JOIN ... ON 두 테이블 결합 JOIN snl_show ON c.name = s.name
NOT LIKE 문자열 미포함 조건 job NOT LIKE '%개그맨%'
OR + AND 복합 조건 괄호로 묶어 우선순위 명확히 (A AND B) OR C
broadcast_date 비교 날짜 필터 > '2022-09-15'

 

 

 

[나의 생각 정리]

JOIN을 다 배웠는데 아직 헷갈린다 ㅎㅎ;

많이 사용해야 눈이랑 손에 익숙해질 것 같다.

 

 

[적용점]

결과에서 필요한 컬럼만 선별적 조회

 

 

“이 글은 제로베이스 데이터 스쿨 주 3일반 강의 자료 일부를 발췌하여 작성되었습니다.”