SQLクエリを記述して、最初のログインの翌日に再度ログインしたプレーヤーのスコアを小数点以下第2位に四捨五入して報告します。つまり、最初のログイン日から2日以上連続してログインしたプレーヤーの数を数え、この数をプレーヤーの総数で割る必要があります。
クエリ結果の形式は次のとおりです。
アクティビティテーブル:
結果表:
結果表:
説明:ID 1のプレーヤーのみが、初日にログインした後に再度ログインするため、答えは1/3 = 0.33です。
解決する:
SELECT round((SELECT COUNT(DISTINCT b.player_id)
FROM activity AS b
,activity AS c
WHERE b.event_date =
(SELECT MIN(temp.event_date) FROM activity AS temp WHERE temp.player_id = b.player_id)
AND b.player_id = c.player_id
AND datediff(b.event_date, c.event_date) = -1) / COUNT(DISTINCT a.player_id),
2) AS 'fraction'
FROM activity AS a;