Найти тему

550. Анализ игрового процесса 4 SQL (средний)

Задача: Напишите SQL-запрос, чтобы сообщить о доле игроков, которые вошли в систему снова на следующий день после дня, когда они впервые вошли в систему, округленную до 2 знаков после запятой. Другими словами, вам нужно подсчитать количество игроков, которые входили в систему как минимум два дня подряд, начиная с даты их первого входа в систему, затем разделить это число на общее количество игроков.

Дано:

Решение:

SELECT ROUND(SUM(login)/COUNT(DISTINCT player_id), 2) AS fraction

FROM

(SELECT player_id, DATEDIFF(event_date, MIN(event_date) OVER(PARTITION BY player_id)) = 1 AS login FROM Activity) AS t

Результат:

-2

Источник: https://leetcode.com/problems/game-play-analysis-iv/description/