select
user_id,
first_buy_date,
second_buy_date,
cnt
from
(
select
*,
min(date) over(partition by user_id ) first_buy_date,
lead(date,1) over(partition by user_id order by date) second_buy_date,
count(product_name) over(partition by user_id) cnt,
row_number() over(partition by user_id order by date) rn
from
order_info
where
status = 'completed'
and
product_name in ('Python','Java','C++')
and
date>'2025-10-15'
) t1
where cnt>=2 and rn = 1
order by user_id


京公网安备 11010502036488号