One day retention 2 &3


#1

In One day retention 2, my code is as followed:

SELECT date(g1.created_at) as dt, g1.user_id FROM gameplays AS g1
JOIN gameplays AS g2 on 
 g1.user_id = g2.user_id
 ORDER BY 1
 LIMIT 100;

It was checked out to be right by the website. But in result, it appears, in each day, there are many lines of every same user, for example, the first 22 lines are all No.128 on 2015-08-04.

So I'm confused.

Then in the next exercise, When I changed the join condition to:

g1.user_id = g2.user_id and date(g1.created_at) = date(datetime(g2.created_at, '-1 day'))

Some of the number still repeat in the user_id column.

Could someone help and tell me why the number is repeating in the user_id column?