with tmp as ( select user_id,date,rank() over (partition by user_id order by date) rk from order_info where date> '2025-10-15' and product_name in ('C++','Java','Python') and status='completed' order by user_id) select user_id,(select date from tmp where user_id=t.user_id and rk =1) as first_buy...