반응형

데이터드리븐 49

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

1. 팀 과제 발표자료 어제 열심히 만든 팀 과제 발표자료이다! 1.1 분석 목적 어제 분석한 이탈률을 통해 기존 고객의 이탈률이 높은 것을 확인하였으며, 기존 고객의 이탈을 줄이고 재구매를 할 수 있도록 기존 고객을 타겟으로 설정하는 것이 신규 고객을 유치하는 것보다 더 중요하고 비용이 적게 들 것으로 판단이 됨 1.2 지표 설정 ✔ RFM 분석을 통한 R, F, M 지표를 설정한 기준을 보여주었으며, 이렇게 기준을 설정한 이유도 설명함 ✔ RFM 점수를 기준으로 설정한 고객의 등급을 보여줌 (VVIP ~ BRONZE, FAMILY, SLEEPING 등급) 1.3 분석 흐름 전체 데이터셋 분석 → 분석 목적 설정 (고객 중심 분석) → 타겟 설정 (기존 고객) → RFM 지표 설정 (등급 설정) → 각..

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

1. 분석할 항목 ✅ RFM을 통한 고객 유지 ① 이탈률 → 앱 푸쉬 알림, 00님을위한 추천목록, ~~까지 사용할 수 있는 쿠폰 발급 ② R이 3인값(휴면X) 안에서 F+M 을통해 1등급 부터 5등급까지 나눠 해택주기 ③ 지역별 매출액 비교 : 지역별 top 3의 top3 도시 ✅ 전체적인 고객 유지 ④ 시간대 별 주문건수 변화 (00시부터 24시까지 6시간씩) ⑤ 계절성 확인(어느 분기 or 월에 전체적으로 소비가 늘어나는지) → 많이들 찾는 제품으로 중/하위 고객 ⑥ 등급별 상위 판매 카테고리 2. 쿼리 작성 2.1 필요 컬럼만 있는 join table 생성 미리 필요한 테이블과 컬럼들을 선정하여 각 테이블을 조인한 테이블을 생성함 customers orders order_payments produ..

[스타터스 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 국가 별 고객 수, 구성비, 누적 비 - 고객 수로 내림..

[스타터스 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) 업무 데이터 - 갱신형, 정합성↑, 정확도↑, 정규화 - 기업의 비즈니스 결과로 생성된 데이터 - 마스터 데이터(정보 데이터..

반응형