Very Simple MySQL Solution + Clear Steps
The steps I thought about (in this order) were:\n (1) Add a column to the data that defines the first_login for each player using the OVER & PARTITION BY functi
The steps I thought about (in this order) were:\n* (1) Add a column to the data that defines the first_login for each player using the OVER & PARTITION BY functions\n* (2) Use a WHERE clause to filter for rows whose event_date = first_login + 1\n* (3) Use COUNT to count the number of relevant_players that meet this condition\n* (4) Divide by the total number of players\n* (5) Round the final fraction to two decimal places using ROUND( . , 2)\n\n```\nSELECT ROUND( COUNT(*) / (SELECT COUNT(DISTINCT player_id) FROM Activity), 2) fraction\nFROM \n    (SELECT *, MIN(event_date) OVER (PARTITION BY player_id ORDER BY player_id, event_date) first_login\n    FROM Activity) ActivityFirst\nWHERE event_date = first_login + 1\n```
[]