본문 바로가기
[스파르타코딩클럽]데이터분석 과정/SQL

[SQL 코드카타] 98번 (LeetCode)

by doo_ 2024. 1. 11.

> 오늘은 가볍게 1문제씩 풀기

98번. game-play-analysis-iv

> DATE_SUB 혹은 DATEDIFF 복습 : here

SELECT
    ROUND(COUNT(DISTINCT player_id) / (SELECT COUNT(DISTINCT player_id)
                                    FROM Activity),2) AS fraction
     #전체 id 개수로 나누기
FROM
    Activity
WHERE
    (player_id, DATE_SUB(event_date, INTERVAL 1 DAY))
    IN (SELECT player_id, MIN(event_date) AS first_login FROM Activity GROUP BY player_id)
    # 처음 접속한 날로부터 다음 날 접속한 id 개수 구하고