본문 바로가기

전체 글

(131)
[231222] SQL: 코드카타 72~74 1. WITH RECURSIVE절을 활용한 문제 입양 시각 구하기(2) https://school.programmers.co.kr/learn/courses/30/lessons/59413 1) 어떤 문제가 있었나 시간대별 입양수를 구하는 문제에서, 입양이 발생하지 않은 시간대를 포함한 전체 시간대를 추출하는 방법을 모름 2) 내가 시도해본 건 무엇인가 IF절을 활용해 값이 NULL일 경우 0이 기입되도록 쿼리를 작성하였으나, 애초에 항목이 없어서 NULL값도 없어 조건절 적용 불가 3) 어떻게 해결했나 구글링을 통해 WITH RECURSIVE 재귀 함수로 없는 칼럼을 새로 생성하는 방법을 공부하고, 이후 문법은 스스로 짜봄 with recursive A as (select 0 as h union all s..
[231221] SQL: 코드카타 71 1) 어떤 문제가 있었나 ① 오프라인/온라인 판매 데이터 통합하기 UNION ALL을 활용해 보았으나 정답 오류로 체크됨 SELECT * FROM (SELECT SUBSTRING(sales_date,1,10) sales_date, product_id, user_id, sales_amount FROM ONLINE_SALE WHERE SUBSTRING(sales_date,1,7) = '2022-03' UNION ALL SELECT SUBSTRING(sales_date,1,10) sales_date, product_id, null user_id, sales_amount FROM ONLINE_SALE WHERE SUBSTRING(sales_date,1,7) = '2022-03') ORDER BY 1, 2, 3 ..
[231220] SQL: 코드카타 66~70 1) 어떤 문제가 있었나 ① 조회수가 가장 많은 중고거래 게시판 첨부파일 조회하기 with 절을 활용해 게시판ID 별 MAX 값을 뽑았으나 오답 처리 WITH TABLE1 AS (SELECT BOARD_ID, MAX(VIEWS) FROM USED_GOODS_BOARD) SELECT CONCAT('/home/grep/src/', BOARD_ID,'/', FILE_ID, FILE_NAME, FILE_EXT) FILE_PATH FROM USED_GOODS_FILE WHERE BOARD_ID = (SELECT BOARD_ID FROM TABLE1) ORDER BY FILE_ID DESC ② 주문량이 많은 아이스크림들 조회하기 정답을 맞추긴 하였으나 쿼리문이 다소 긴 것 같아 다른 답을 찾아봄 WITH FH AS..
[231219] SQL: 코드카타 60~65 1) 어떤 문제가 있었나 SQL 코드카타 중 ① 자동차 대여 일수를 구하는 문제에서 두 개의 날짜값의 일수 차이를 구할 때 (종료일 - 시작일)로 계산하니 오류 발생함 ② 장바구니에 우유(Milk)와 요거트(Yogurt)를 동시에 구입한 장바구니 id를 조회해야 했는데, 동일한 품목을 중복 구매한 값을 제거한 장바구니ID 추출에 어려움을 겪음 2) 내가 시도해본 건 무엇인가 ① 날짜 차이를 추출할 수 있는 함수를 구글링하여 DATEDIFF 함수를 적용해봄 ② 우유와 요거트를 1과 100 숫자값으로 치환한 후 합계값이 101~199 사이인 장바구니 ID 추출하여 정답 완료 하지만, 데이터 정보량이 많을 경우 오류 발생할 것으로 판단됨 3) 어떻게 해결했나 ① DATEDIFF 를 활용한 후, 자동차 대여 시..
[231218] SQL: 코드카타 55~59 1) 어떤 문제가 있었나 SQL 코드카타 59번 문제에서 특정 날짜에 자동차 대여 상태를 표시한 후 이를 자동차ID별로 출력해야 했는데, 특정일자 이전의 대여 기록을 거르고 대여중인 상태가 우선순위가 되도록 출력할 방법을 잡지 못함 2) 내가 시도해본 건 무엇인가 WHERE 절과 GROUP BY에 출력 조건을 제한해보려 했지만, 오답으로 체크됨 3) 어떻게 해결했나 다른 사람 쿼리문을 통해 대여시작/종료 일자 내 특정일자 포함되면 1(대여중)로, 반대는 0(대여가능)으로 치환 > MAX값을 통해 대여중 상태가 우선순위를 갖도록 하는 방법을 알게 됨 --- 내가 쓴 쿼리문 --- SELECT car_id, IF(SUM(RENTAL)=0, '대여 가능', '대여중') AVAILABILITY FROM ( SE..
[231211주차] 사전캠프 W2 WIL : Weekly I Learned 지난 일주일을 돌아봄으로써 나의 현재 상태를 파악하고 더 나은 다음 주를 만들기 위해 어떤 부분을 어떻게 채워나갈지 고민하는 것 내가 한 일(Facts) - [데이터 분석 종합반] 2~5주차 수강 완료 - 사전 캠프 2주차 데일리 미션(4/5) 진행 - SQL 코드카타 28~55 문제 풀이 - TIL 작성 느낀점(Feelings) - 금주에는 (말로만 듣던) 파이썬을 처음 접했다. 적합한 라이브러리를 불러와 코드를 입력하면 원하는 방식으로 데이터를 구현할 수 있다는 사실, 그리고 코드 입력 순서나 흐름은 조금이나마 알 것 같았다. 하지만 구체적인 코드 하나하나가 무슨 의미인지 이해가 안돼서 혼란스러웠다. 이를테면 쉼표나 마침표, 언더바, 괄호, 대활호 등 각 특수..
[231215] Phython: 실습 - 프로덕트 개선 * 수강 강의명: 데이터 분석 종합반 - 5주차 [요약] * 5주차 앞단 내용은 https://datananalysis.tistory.com/21 참고 1. 프로덕트 개선은 정말 도움이 되었을까 - 가설 : - 8월 2주차부터 프로덕트가 개편되었으므로, 3주차 이후 강의 완주율이 현저히 떨어졌을 것이다. - 이후 액션: 3주차 이후 완주율이 떨어졌다면 이전의 커리큘럼으로 돌아가고, 아니라면 다른 요인을 찾는다. #라이브러리 불러오기 import pandas as pd import seaborn as sns import matplotlib.pyplot as plt plt.rc('font', family='NanumBarunGothic') sparta_data = pd.read_table('/content/..
데이터 분석가가 되어보니 중요한 것들 1. 오늘의 아티클 데이터 분석가가 되어보니 중요한 것들 ┃freak analyst(요즘IT) https://yozm.wishket.com/magazine/detail/1863/ 실제로 데이터 분석가(Data Analyst)가 되어 일하다 보니 중요한 것들에 대해 소개한다. 2. 정보 요약 1) 데이터 분석가에 대한 정의 데이터에 기반해 성공 확률이 높은 의사결정을 지속적으로 하도록 돕는 사람이다. 데이터 분석가에게 중요한 점은 ① 데이터 기반 의사결정 ② 성공 확률이 높은 의사결정 ③ 지속성 크게 세 가지 이다. ① 데이터 기반 의사결정 데이터 분석가의 주요 업무는 데이터에 기반해 의견을 내는 것이다. 다만, 데이터가 잘 활용되지 않거나 잘 쌓이지 않는 조직도 많기에, 데이터 분석 작업 이전에 데이터가..