SELECT a.user_id, a.date as "first_buy_date", a.cnt from (SELECT oi.user_id, oi.date, ROW_NUMBER()over(partition by oi.user_id order by oi.date)mm, x.cnt FROM order_info oi LEFT JOIN (select user_id, COUNT(id) as cnt from order_info where datediff(date,"2025-10-15")>0 and status ="completed" and product_name in("C++","Java","Python") group by user_id having count(id)>=2)x ON x.user_id = oi.user_id where datediff(oi.date,"2025-10-15")>0 and oi.status ="completed" and oi.product_name in("C++","Java","Python") and x.cnt is NOT NULL)a where a.mm =1 ORDER BY a.user_id