select user_id,min(date),count(user_id)
from (
    select *,count(user_id)over(partition by user_id) xia
    from (
        select *
        from order_info
        where date>'2025-10-15' and status='completed' and product_name in ('C++','Java','python')
    ) a
) b
where xia>=2
group by user_id
order by user_id;