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

京公网安备 11010502036488号