분류 전체보기 170

데이터 로그 설계, 데이터 로깅, 이벤트 로그 설계, 데이터 QA

https://zzsza.github.io/data/2021/06/13/data-event-log-definition/ 데이터 로그 설계, 데이터 로깅, 이벤트 로그 설계, 데이터 QA의 모든 것이벤트 데이터 로그 설계, 데이터 로그 설계, 데이터 로깅, 데이터 QA에 대해 작성한 글입니다 키워드: 데이터 로깅, 데이터 로깅이란, 데이터 로깅 시스템, Firebase event logging, 이벤트 로그 설계,zzsza.github.io 위 포스팅을 참고하여 공부한 내용을 정리했습니다. 1. 데이터 로깅?앱을 사용하면 우리가 어떤 행동을 하는지 데이터가 남음ex. 쿠팡 접속 → '사과' 검색 → 장바구니 → 결제이런 데이터를 사용자 로그 데이터, 이벤트 로그 데이터 등으로 부름로그접속 기록, 특정 행동..

Domain Knowledge 15:27:46

[Ad] 플랫폼, 미디어

플랫폼 사용자가 다양한 활동을 하는 디지털 서비스와 채널 - 소셜 미디어 사이트 (Facebook, Instagram) - 검색 엔진 (Google) - 온라인 쇼핑 사이트 (Amazon) - 스트리밍서비스 (넷플릭스) 미디어 정보 전달의 수단 광고가 게재되는 다양한 형식과 매체 플랫폼을 통해 제공되기도 하고, 독립적으로 운영되기도 함 - 신문 - 잡지 - TV - 라디오 - 디지털미디어 고객 데이터는 결국 고객과의 접점인 플랫폼과 미디어에 집중 따라서 교차점에서 효과적인 광고 전략을 구현하기 위해 고객 데이터를 분석하고 활용하는 것이 중요

Domain Knowledge 2024.04.12

[LeetCode] friend-requests-ii-who-has-the-most-friends

WITH temp AS ( SELECT id, SUM(cnt) AS num FROM ( (SELECT requester_id AS id, COUNT(accepter_id) AS cnt FROM RequestAccepted GROUP BY requester_id) UNION ALL (SELECT accepter_id AS id, COUNT(requester_id) AS cnt FROM RequestAccepted GROUP BY accepter_id) ) a GROUP BY id ) SELECT id, num FROM temp WHERE num = (SELECT MAX(num) FROM temp) 1. UNION ALL을 이용해서 requester_id와 accepter_id를 모두 COUNT 해준 후 중..

카테고리 없음 2024.03.26

[LeetCode] restaurant-growth 📌

https://leetcode.com/problems/restaurant-growth/?envType=study-plan-v2&envId=top-sql-50 날짜별 이동합과 이동평균을 구하는게 어려웟던 문제 1. 날짜를 만들어주고 2. 이동합을 구해주고 3. 이동평균을 구해주는 식으로 문제를 풀어야 한다 1. 날짜 만들어주기 SELECT visited_on FROM customer c WHERE visited_on >= (SELECT DATE_ADD(MIN(visited_on),INTERVAL 6 DAY) FROM customer) GROUP BY visited_on WHERE절 서브쿼리에 DATE_ADD(날짜, INTERVAL n DAY) 함수를 사용해서 테이블 내의 최소일자 + 6일 이상 인 날짜들에..

카테고리 없음 2024.03.26

[LeetCode] investments-in-2016 📌

https://leetcode.com/problems/investments-in-2016/description/?envType=study-plan-v2&envId=top-sql-50 1. tiv_2015가 중복 2. lat, lon이 유일 2가지 조건을 WHERE절 서브쿼리를 이용해 작성해주면 된다 SELECT ROUND(SUM(tiv_2016), 2) AS tiv_2016 FROM insurance WHERE tiv_2015 IN ( SELECT tiv_2015 FROM insurance GROUP BY tiv_2015 HAVING COUNT(*) > 1 -- 해당 tiv_2015가 2번 이상 등장해야 함 ) AND WHERE lat, lon IN ( SELECT lat, lon FROM insuran..

SQL/문제풀이 2024.03.26

[LeetCode] movie-rating

https://leetcode.com/problems/movie-rating/submissions/1213326562/?envType=study-plan-v2&envId=top-sql-50 맨 처음 작성한 쿼리는 다음과 같다. -- 가장 많은 리뷰 남긴 사람 (SELECT name AS results FROM ( SELECT u.name, COUNT(r.movie_id) AS cnt FROM MovieRating r JOIN Users u ON r.user_id = u.user_id GROUP BY u.name ORDER BY cnt DESC, u.name ) a LIMIT 1) UNION -- Feb, 2020에 평균 평점 가장 높은 영화 (SELECT title AS results FROM ( SEL..

카테고리 없음 2024.03.25

[LeetCode] exchange-seats 📌

https://leetcode.com/problems/exchange-seats/?envType=study-plan-v2&envId=top-sql-50 SELECT a.id, CASE WHEN a.id % 2 = 1 THEN b.student ELSE c.student END AS student FROM seat a LEFT JOIN seat b ON a.id + 1 = b.id LEFT JOIN seat c ON a.id = c.id + 1 id가 홀수인 경우와 짝수인 경우를 나눠서 문제를 해결하려고 했는데 table의 마지막 열에 대해서 어떻게 처리가 안되더라 .. 원래 table은 다음과 같다. SELECT CASE WHEN id = (SELECT MAX(id) FROM seat) AND id % ..

SQL/문제풀이 2024.03.20

[LeetCode] last-person-to-fit-in-the-bus 📌

https://leetcode.com/problems/last-person-to-fit-in-the-bus/?envType=study-plan-v2&envId=top-sql-50 누적합을 어떻게 구해야하는지 몰라서 문제에 접근을 못했다! 1. JOIN 이용 SELECT * FROM Queue a JOIN Queue b ON a.turn >= b.turn ORDER BY a.turn, b.turn ex) a의 turn이 2 --> turn이 1, 2인 row가 JOIN 됨 2. a.turn으로 GROUP BY 후 해당 순서의 누적 weight를 구하기 위해 SUM(b.weight)를 계산 HAVING절에 1000 이하라는 조건을 걸어주고 누적 weight가 가장 큰 순서대로 정렬한다 이때 a.person_..

SQL/문제풀이 2024.03.20