-
<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 - 오늘 한 일