데이터 엔지니어링

[프로그래머스] 데이터 엔지니어링 데브코스 3기/숙제

[숙제 - 23일 차] 데브코스 SQL 숙제

숙제채널별 월별 매출액 테이블 만들기TableFieldssession_timestampsessionId (string), ts (timestamp)user_session_channeluserid (integer), sessionid (string), channel (string)session_transactionsessionid (string), refunded (boolean), amount (integer)channelchannelname (string)adhoc 밑에 CTAS로 본인이름을 포함한 테이블로 만들기session_timestamp, user_session_channel, session_transaction 사용아래와 같은 필드로 구성monthchanneluniqueUsers (총 방문 사..

[프로그래머스] 데이터 엔지니어링 데브코스 3기/TIL(Today I Learn)

[TIL - 24일 차] 데이터 웨어하우스와 SQL과 데이터 분석 (4)

JOIN 소개JOIN이란?두 개 이상의 테이블을 공통 필드를 가지고 merge하는 데 사용된다. 이는 스타 스키마로 구성된 테이블로 분산돼 있던 정보를 통합하는 데 사용된다. 6개의 JOIN 방법이 존재하지만, 대부분은 LEFT JOIN과 INNER JOIN으로 충분하다.JOIN 문법JOIN 방식에 따라 ____에는 INNER, FULL, LEFT, RIGHT, CROSS가 들어갈 수 있다.SELECT A.*, B.*FROM raw_data.table1 A____ JOIN raw_data.table2 B ON A.key1 = B.key1 and A.key2 = B.key2WHERE A.ts >= '2019-01-01';JOIN 시 고려할 점중복 레코드가 없고, Primary Key Uniqueness가 ..

[프로그래머스] 데이터 엔지니어링 데브코스 3기/TIL(Today I Learn)

[TIL - 23일 차] 데이터 웨어하우스와 SQL과 데이터 분석 (3)

GROUP BYGROUP BY 절 & Aggregate함수GROUP BY를 활용하여 테이블의 레코드를 그룹핑하여 그룹별로 다양한 정보를 계산할 수 있다. 계산 과정은 두 단계로 이루어지며, 다음과 같다.그룹핑할 필드를 GROUP BY로 결정(하나 이상의 필드가 될 수 있음)그룹별로 계산을 위한 Aggregate 함수 사용(COUNT, SUM, AVG, MIN, MAX, LISTAGG, ...)예제 (1)아래의 SQL 구문은 월별 세션 수를 카운트한다. timestamp의 형식은 "yyyy-mm-dd ~"이므로 LEFT(ts, 7)은 "yyyy-mm"이 되며, mon으로 그룹핑하여 월별 세션 수의 개수를 계산한다.SELECT LEFT(ts, 7) AS mon, COUNT(1) AS session_cou..

[프로그래머스] 데이터 엔지니어링 데브코스 3기/TIL(Today I Learn)

[TIL - 22일 차] 데이터 웨어하우스와 SQL과 데이터 분석 (2)

SELECT 배우기 예제 테이블 소개 웹서비스 사용자/세션 정보 세션이란 사용자의 방문을 논리적인 단위로 나눈 것이다. 하나의 사용자는 여러 개의 세션을 가질 수 있으며, 보통 세션을 만들어낸 접점(경유지)을 채널이란 이름으로 기록해 두어 마케팅 관련 기여도 분석에 활용한다. 사용자 ID : 보통 웹 서비스에서 등록된 사용자마다 부여하는 유일한 ID 세션 ID : 세션마다 부여되는 ID 이 정보를 기반으로 다양한 데이터 분석과 지표 설정이 가능하다. 일주월별로 Unique User의 수를 사용자 ID를 통해 카운트하여 Active User를 확인할 수 있다. 예를 들어 WAU의 경우, 일주일 내에 여러 번 방문을 한 User를 1로 계산하여 Active User를 카운트한다. 마케팅 관련, 사용자 트래픽..

기억에 남는 블로그 닉네임
'데이터 엔지니어링' 태그의 글 목록 (21 Page)