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