일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- 코로나 오스트리아 비자
- 데이터분석
- spark
- 인과추론
- pyspark
- 생각정리
- 프로모션분석
- MySQL
- CRM 마케팅
- The running dream
- SQL강의추천
- CRM
- 쿼리
- MBTMI
- 랜덤샘플링
- 해외로 나가고 싶다
- 이커머스데이터분석
- 이중차분법
- SQL
- 해시 샘플링
- 런던쌤
- 해외로 떠나고 싶어요
- 하고싶은건 많고 세상도 넓고
- airscreen
- 프로그래머스
- 토이프로젝트
- 그로스인턴
- 오스트리아 비자
- 맥북미러링
- 실무 쿼리
- Today
- Total
목록SQL (9)
Data, English, Travel
문제 바로가기 >> https://school.programmers.co.kr/learn/courses/30/lessons/131534 그냥 평범한 테이블이라 딱히 어려운 문제는 아닌듯.근데 결과 데이터 보고 코호트 구하는 테이블인건가? 싶었다. 커머스 도메인이면 실무상 유용 할 듯 왜냐면 이커머스 도메인에서 신규 유저 리텐션 정의할 때 많은 회사들이 "재구매"를 기준으로 리텐션을 정의하는데, 아래 같이 21년 신규 유저이면서 22년 월별 리텐션(=재구매율)을 보고 싶다면 이런식으로 데이터를 뽑은 다음 Pivot 해서 코호트 분석 해보면 신규 유저를 잘....어느 시점에 재구매 유도를 해야하는지 대강 감이 오기 때문이다. 내가 쓴 답 : with base as ( select count(dis..
문제 바로가기 >> https://school.programmers.co.kr/learn/courses/30/lessons/131116 문제 요약FOOD_PRODUCT에서 식품 분류로 GROUP BY 한 후 가격이 제일 비싼 식품 찾아 조회한다.WINDOW 함수로 식품 분류 별 비싼 식품을 찾을 수 있을 것 같다.그 후 서브쿼리로 RANK == 1인 식품 필터링한다. POINT : 윈도우 함수 사용법은 RANK() OVER (PARTITION BY ~ ORDER BY) 이다문제 풀이1) WINDOW 함수로 각 제품의 식품 분류 별 가격 순위를 뽑는다.2) 그 후 카테고리에 IN() 으로 필터링을 사용한다3) 위 결과를 FROM절 서브쿼리를 사용하여 RANKS=1인 제품만 뽑아내어 정렬한다.SELECT ..
취준 시절 SQL을 공부하면서 가장 궁금했던 것 중 하나는 "CRM 마케터" 직무에서 자주 쓰는 SQL은 무엇인지 궁금했던 것 같다. 작년 입사 후 1년간 신입 CRM 마케터로 일하면서 자주 사용했던 SQL 쿼리들을 [CRM 마케터의 SQL] 시리즈로 연재해볼까 한다.*이 시리즈는 필자가 실무에서 자주 사용하는 SQL 쿼리들을 ChatGPT 데이터로 임의로 구현한 내용입니다. 기업마다 사내 실험/분석 환경 및 직무 R&R에 따라 본 내용을 마케터가 수작업으로 하지 않아도 될 수 있습니다. (하지만 저는 최첨단 수동화 기법을 사용합니다...)SUM(CASE WHEN ...) 구문과 MAX(CASE WHEN ...) 구문은 각각 집계 함수이다.SQL에서는 데이터를 피봇 할 때 위 두 구문을 주로 활용한다. ..
문제 바로가기 >> https://school.programmers.co.kr/learn/courses/30/lessons/301651 프로그래머스 문제 중 공부가 된 문제다. 답안with recursive family as ( -- 1) 부모가 없는 최초 세대 구하기 select id, parent_id, 1 as generation from ecoli_data where parent_id is null union all -- 2) 재귀적으로 세대 구하기 select t1.id, t1.parent_id, t2.generation + 1 from ecoli_data t1 join family t2 on t1.parent_id = t2.id)-- 3) 최..
문제 바로가기 >> https://school.programmers.co.kr/learn/courses/30/lessons/299310 서브쿼리, CTE 없이 풀고 싶다면 아래와 같이 풀면 된다.스캔 두번 안해도 되어서 효율 나쁘지 않을듯? 내가 쓴 답 : select year(differentiation_date) as YEAR , MAX(size_of_colony) over (partition by year(differentiation_date)) - size_of_colony as YEAR_DEV , IDfrom ecoli_dataorder by 1,2 풀이 - 집계도 필요하고 원본 데이터 ID 값도 필요해서 Window 함수를 썼다.- 원본 데이터에서 연도별 대장균 크기의 MAX값을 구..
문제 바로가기 >> https://school.programmers.co.kr/learn/courses/30/lessons/293261 심심해서 옛날에 SQL 코테 준비하던 사이트에 들어가서 깊게 생각 안하고 풀어봤다. 다른 사람들은 이중 조인하고...많던데 나는 그냥 대충 window 함수로 풀었다. (그래서 그런지 왠지 느린듯) 내가 푼 답지 : select ID, fish_name, lengthfrom ( select ID, fish_name, length, max(length) over (partition by fish_name) max_len from fish_info t1 left join fish_name_info t2 on t1.fish_type = t2.fish_type)..

취준 시절 SQL을 공부하면서 가장 궁금했던 것 중 하나는 "CRM 마케터" 직무에서 자주 쓰는 SQL은 무엇인지 궁금했던 것 같다. 작년 입사 후 1년간 신입 CRM 마케터로 일하면서 자주 사용했던 SQL 쿼리들을 [CRM 마케터의 SQL] 시리즈로 연재해볼까 한다.*이 시리즈는 필자가 실무에서 자주 사용하는 SQL 쿼리들을 ChatGPT 데이터로 임의로 구현한 내용입니다. 기업마다 사내 실험/분석 환경 및 직무 R&R에 따라 본 내용을 마케터가 수작업으로 하지 않아도 될 수 있습니다. (하지만 저는 최첨단 수동화 기법을 사용합니다...) 직무 특성상 CRM 실험, 프로모션 분석 등등의 목적으로 랜덤 샘플링을 하는 일이 자주 있다.랜덤이 다 같은 랜덤이지 뭐가 다르냐 싶긴 하지만....조금 더 잘 섞기..

이 프로젝트는 미디엄의 'Project Data Analysis : Analyzing E-Commerce Business Performance (By M. Hamzah)'를 참고하여 진행했다. 원문 전체를 번역한 것이 아닌, 공부하다가 필요한 부분을 정리한 것이다. 2편 : ERD 및 데이터 구조 살펴보기 바로가기 [토이프로젝트] Ecommerce 비즈니스 성과 분석하기 (Feat.SQL) (2) 이 프로젝트는 미디엄의 'Project Data Analysis : Analyzing E-Commerce Business Performance'를 참고하여 진행했다. 원문 전체를 번역한 것이 아닌, 공부하다가 필요한 부분을 정리한 것으로 원문은 하단에 링크 iwannatakeabreakfromschool.tis..