select 
    a.id,a.user_id,a.product_name,a.status,a.client_id,a.date
from
    (
        select
            user_id,id,product_name,status,client_id,date,
            count(*) over (
                partition by
                    user_id
            ) as num
        from
            order_info
        where
            date > '2025-10-15'
            and status = 'completed'
            and (
                product_name = 'C++'
                or product_name = 'Java'
                or product_name = 'Python'
            )
    ) a
where
    a.num >= 2
order by
    a.id

和上一题没啥区别