반응형

전체 글 184

[스타터스 TIL] 52일차.SQL 실전 트레이닝 (8) - 미니프로젝트 1

1. 미니 프로젝트 1.1 데이터 Brazilian E-Commerce Public Dataset by Olist 100,000 Orders with product, customer and reviews info www.kaggle.com 1.2 데이터 IMPORT ① 테이블 생성 ② psql에서 csv 파일 경로 입력 ③ 제약조건 설정 1.3 분석 방법 ① 데이터 탐색 ② 분석 목적 설정 ③ 지표 설정 및 분석 계획 ④ 데이터 추출/정제/가공/분석 ⑤ 리포트 작성 및 발표 ✅ 분석 목적 설정 - 고객 담당자 - 유통 담당자 - 제품 담당자 - 배송 담당자 2. 프로젝트 진행 2.1 분석 목적 설정 ✔ 고객 담당자 ✔ 고객 중심 분석 → 효과적인 고객 관리 전략 수립을 위한 데이터 분석 (고객 세분화(R..

[스타터스 TIL] 51일차.SQL 실전 트레이닝 (7) - RFM 분석, 재구매율, 이탈고객 분석, 백분위수, 최빈값

1. RFM 분석 - 얼마나 최근에 구매를 했는지 - 얼마나 빈번하게 구매를 했는지 - 얼마나 많은 금액을 지불을 했는지를 확인하기 위한 지표 1.1 RFM 집계 WITH cte_customers AS ( SELECT c.customer_id, c.company_name , o.order_id, o.order_date , od.product_id, od.unit_price, od.quantity, od.discount , od.unit_price * od.quantity * (1-od.discount) AS sales FROM customers c, orders o , order_details od WHERE c.customer_id = o.customer_id AND o.order_id = od.ord..

[스타터스 TIL] 50일차.SQL 실전 트레이닝 (6) - 고객 분석, Decil 분석, RFM 분석

1. 고객분석 (Customers) - 국가별 고객 수, 누적 합계 - 국가별 고객 수, 구성비, 누적비 - 주문이력이 없는 고객 1.1 국가 별 고객 수, 누적 합계 - 고객 수로 내림차순 정렬 - 고객 수가 동일한 경우 국가명으로 오름차순 정렬 - cte 구문 사용하지 않고 서브쿼리를 사용하여 작성 SELECT 국가명 , 고객수 , sum(고객수) over(ORDER BY 고객수 DESC, 국가명) AS 누적합계 FROM (SELECT country AS 국가명 , count(DISTINCT customer_id) AS 고객수 FROM customers GROUP BY country) AS a ORDER BY 고객수 desc, 국가명 ; 1.2 국가 별 고객 수, 구성비, 누적 비 - 고객 수로 내림..

[유데미 스타터스 취업 부트캠프 4기] 데이터분석/시각화(태블로) - 10주차 학습 일지

10주차 교육에 대한 회고 (4L) 이번 주부터 SQL 오프라인 강의가 진행되었다. 길다면 길고 짧다면 짧은 한 달간의 태블로 강의가 끝나고 SQL 강의가 시작되어서 나름 기대가 되었다. SQL을 예전에 공부한 적이 있어서 태블로보다는 낫지 않을까라는 생각을 했지만, 잘못된 판단이었다. 너무나 오랜만에 쿼리를 짜서 그런가 기본도 틀려버리고 머릿속이 하얘지기도 하였다... 또한 태블로 강의를 한 달동안 수강하면서 꽤나 지쳤는지, SQL 강의가 엄청 강도가 높은 것이 아님에도 우리는 많이 힘들어했다. 거기에다 계속 팀 프로젝트가 진행되다보니 진도 따라가랴, 프로젝트 하랴 한 주가 너무나 정신없이 지나갔다! (체력을 더 길러야 하나...) 태블로도 중요하지만 SQL 역량이 정말 중요하다고 강조를 하셔서 더욱 ..

[스타터스 TIL] 49일차.SQL 실전 트레이닝 (5) - Z차트, 그룹함수 (GROUPING SETS, ROLLUP, CUBE)

1. Z차트 - 시간의 흐름에 따라 매출이 어떻게 변하는지 확인하기 위해 사용 - 월별 매출 - 매출 누계 : 해당 월 매출에 이전 월까지 매출 누계 - 이동 년계 : 해당 월의 매출에 과거 11개월의 매출을 합한 값(최근 1년치 누적 합계) → 그래프에 표시되지 않은 과거 1년동안의 매출 추이도 읽을 수 있음 1.1 [전체 매출] 11개월치 이동연계 구하기 - 기간 : 1997-06 ~ 1998-04 - year, month, 월별매출, 매출누계, 이동연계(10개월전 ~ 현재월 매출 : 11개월치) 1) 쿼리 작성 ✅ 내가 작성한 쿼리 ① 총 매출액 구하기 → 이동연계를 구하기 위해 전체 기간의 총 매출액을 구해야 함 ② 기간 설정한 총 매출액 구하기 → CASE WHEN을 활용하여 설정된 기간에 맞는..

[스타터스 TIL] 48일차.SQL 실전 트레이닝 (4) - 제품/카테고리 매출 지표 분석, ABC 분석

1. 제품/카테고리 매출 지표 분석 - 전체 제품 매출 순위 및 매출 비율 - 카테고리 별 제품 매출 순위 및 매출 비율 1) ERD로 활용할 테이블 확인 → order_details와 products의 unit_price는 다름! 왜 다른지 파악할 필요가 있음 → 어느 나라에서 온 제품인지도 파악할 수 있음 (suppliers) 2) 임시 테이블을 만들기 💡 각 테이블의 어떤 컬럼들을 사용할지 먼저 생각해보기 - orders : 주문번호, 고객번호, 주문일, 연, 월, 일, 분기 - order_details : 제품번호, 판매단가, 수량, 할인율, 매출액 - categories : 카테고리ID, 카테고리명 - products : 제품ID, 제품명, 마스터단가, 단종여부 - suppliers : 공급자I..

[스타터스 TIL] 47일차.SQL 실전 트레이닝 (3) - CTE, 윈도우 함수

1. 복잡한 데이터셋 다루기 1.1 복잡한 데이터셋을 다루기 위한 방법 개념 장점 단점 ETL 스냅샷 테이블 - 쿼리 결과를 테이블에 저장 - 예약된 시간에 백그라운드에서 실행 복잡한 로직 없이 테이블에서 원하는 쿼리 바로 실행 - 실시간 데이터 보기 어려움 - 저장 후 데이터 변경 어려움 - 엔지니어의 도움 필요 VIEW 쿼리 결과를 가상테이블로 생성하여 사용 실시간성 보장 - 데이터베이스 쓰기 권한 필요 - 유지 보수 필요 임시테이블 temporary table - 현재 세션동안 유지되는 테이블 - create, insert 구문을 통해 생성 - 복잡한 로직 없이 테이블에서 원하는 쿼리 바로 실행 - 성능 데이터베이스 쓰기권한 필요 공통테이블 표현식 CTE 쿼리 결과에 이름을 붙여 테이블처럼 사용 쿼..

[스타터스 TIL] 46일차.SQL 실전 트레이닝 (2) - 컬럼 연산자, 날짜/시간형 데이터, 다중 행 함수

1. 데이터 추출 1.1 컬럼 추출 ✔ customer 테이블의 country, city 데이터를 유니크하게 추출하고 country 오름차순, city 내림차순으로 정렬하기 SELECT DISTINCT country, city FROM customers ORDER BY country, city DESC; ✔ customer의 company_name 컬럼을 오름차순 정렬하여 상위 3개만 추출 SELECT company_name FROM customers ORDER BY company_name LIMIT 3; 1.2 컬럼 연산자 1) 산술 연산자 order_detail의 주문금액 계산하여 tot라는 컬럼으로 추가하기 SELECT * , unit_price * quantity * (1-discount) AS ..

[스타터스 TIL] 45일차.SQL 실전 트레이닝 (1) - 데이터 분석, 테이블파악

1. 데이터 분석 1.1 문제 정의 1.2 지표 설정 및 분석 계획 ✅ 분석 업무는 질문에서 시작한다. → 질문에 답하기 위한 분석 지표 설정 - 지난 달에 비해 신규 고객이 얼마나 많이 유입되었는가? - 월 별 판매 추이가 어떠한가? - 이탈 고객과 충성 고객의 패턴차이가 있는가? ✅ 질문에 답하기 위한 데이터는 어디에서 나오고 어디에 저장되는가? - 데이터 웨어하우스 (data warehouse) - 사용자의 의사결정에 도움을 주기 위하여 기간 시스템의 데이터베이스에 축적된 데이터를 공통의 형식으로 변환해서 관리하는 데이터베이스를 말한다. 1.3 데이터의 종류에 따른 특성 1) 업무 데이터 - 갱신형, 정합성↑, 정확도↑, 정규화 - 기업의 비즈니스 결과로 생성된 데이터 - 마스터 데이터(정보 데이터..

[유데미 스타터스 취업 부트캠프 4기] 데이터분석/시각화(태블로) - 9주차 학습 일지

9주차 교육에 대한 회고 (4L) 이번 주는 월요일에 팀 프로젝트 마지막 준비를 하고, 화요일에는 팀 프로젝트 발표를 진행하였다. 그리고 화요일 오후부터 본격적으로 태블로 자격증 (Tableau Desktop Specialist) 공부를 시작하였다. 팀 프로젝트가 마무리되고, 다른 팀의 발표를 보는데 정말 잘했다는 생각이 들었다. 그러다 문득, 다른 팀의 대시보드를 보면서 동일하게 구현을 해보면 많은 것을 배울 수 있다는 생각이 들었다. 가장 다양한 그래프를 시각화한 팀의 대시보드를 다운받아 열심히 따라서 구현을 하고 있는데, 정말 많은 도움이 된다. 왜 이렇게 그래프를 구현했을까라는 생각이 들 때, 그 팀의 팀원에게 물어보고 새로운 것들을 배웠다. 다음 주부터 SQL이 진행되지만, 해커톤에서는 태블로를..

반응형