Question on the task of build a funnel from multiple tables2

https://www.codecademy.com/paths/analyze-data-with-sql/tracks/analyze-data-sql-analyze-real-data/modules/analyze-data-sql-usage-funnels/lessons/sql-funnels/exercises/multiple-tables-ii

b.user_id, c.user_id is not null as 'is_checkout', p.user_id is not null as 'is_purchse'
from browse as 'b'
left join checkout as 'c'
	on b.user_id = c.user_id
left join purchase as 'p'
	on b.user_id = p.user_id
limit 50;

I don’t understand why here should select distinct b.browse_date while the result’s b.browse_date is not distinct.

and for this task, i also don’t know why we only join on user_id. ? why don’t we also join on item_id\

I feel messy on this task