select t1.user_id, min(t1.date),t1.number
from
(
select *,count(id) over(partition by user_id) as number
from order_info
where datediff(date,"2025-10-15")>0
and status ="completed"
and product_name in ("C++","Java","Python")
) t1
where t1.number >1
group by 1,3
order by t1.user_id