ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • <TIL> 2023-12-21
    내일배움캠프(데이터 분석 부트캠프 1기)/TIL & WIL 2023. 12. 21. 21:31

    스파르타 코딩클럽 내일배움캠프 4일차

     

    • 오늘 한 일
      • SQL 코드카타 문제 7개!
      • SQL 코딩테스트 블로그 작성
      • 팀 프로젝트 발표 자료(노션) 수정 및 발표 스크립트 관련 회의
    • 배운 것
      • SQL 문제를 풀 때 회원 수라고 하면 ROW수라는 뜻이 아니기 때문에 USER_ID에 DISTINCT를 걸어주어야한다.이거랑 유사하게 문제가 나왔을 때 낚이지 말아야겠다

    팀 프로젝트 유튜브 발표자료 https://www.youtube.com/watch?v=zhLTXsOgpcw

     

    발표는 팀원 분이 수고해주셨다! 감사합니다!

     

    아래는 내가 오늘 풀었던 문제에서 DISTINCT를 쓰지 않아 어디가 틀렸는지 1시간을 고민했던 코드였다.

    SELECT YEAR, 
           MONTH, 
           GENDER, 
           COUNT(DISTINCT USER_ID) AS USERS
    FROM 
    (
        SELECT U.USER_ID,
               DATE_FORMAT(O.SALES_DATE, '%Y') AS YEAR,
               DATE_FORMAT(O.SALES_DATE, '%m') AS MONTH,
               U.GENDER
        FROM USER_INFO U INNER JOIN ONLINE_SALE O ON U.USER_ID=O.USER_ID
        WHERE U.GENDER IS NOT NULL
    ) A
    GROUP BY 1, 2, 3
    ORDER BY 1, 2, 3

     

    분명히 정상 실행되고 정답예시랑 생긴 것도 똑같은데 왜지왜지? 하고 있었다가 결국 조원분께 질문을 드렸더니 

    아 그거~ DISTINCT 해야 되여~ 하는 순간 아.... 회원수.....! 하면서 이마를 탁 쳤다. 

     

    역시 익숙해지는 길은 길고도 험하구나 


    • 느낀점
      • 프로그래머스 3~4단계 SQL을 슬슬 풀기 시작하니까 한 문제 푸는데도 시간이 꽤 걸리고 있다. 앞으로도 꾸준히 하루에 3문제씩이라도 푸는 습관을 유지해야겠다.

    '내일배움캠프(데이터 분석 부트캠프 1기) > TIL & WIL' 카테고리의 다른 글

    <WIL> 2023년 12월 3주차 회고  (0) 2023.12.22
    <TIL> 2023-12-22  (1) 2023.12.22
    <TIL> 2023-12-20  (1) 2023.12.20
    <TIL> 2023-12-19  (0) 2023.12.19
    <TIL> 2023-12-18  (1) 2023.12.18
Designed by Tistory.