select
user_id
,min(date) first_buy_date
,count(*) cnt
from order_info
where user_id in ( # 先找出来满足条件的用户id
                    select user_id
                    from order_info
                    where date > '2025-10-15'
                    and product_name in ('C++', 'Java', 'Python')
                    and status = 'completed'
                    group by 1
                    having count(*) >= 2
                 )
and date > '2025-10-15'
and product_name in ('C++', 'Java', 'Python')
and status = 'completed'
group by 1
order by 1;