select 
    t.id
    ,is_group_buy
    ,if(is_group_buy='Yes',NULL,client.name)
from 
(
select 
    *
    ,count(*) over (partition by user_id) as cnt
from 
    order_info 
where datediff(date,"2025-10-15")>0
      and status = 'completed' 
      and product_name in ('C++','Java','Python')
) as t
left join 
client on t.client_id = client.id
where t.cnt>=2
order by t.id