SELECT COALESCE(name, 'GroupBuy') AS source ,COUNT(*) AS cnt FROM ( SELECT order_info.id AS id, order_info.is_group_buy AS is_group_buy, client.name AS name, COUNT(*) OVER (PARTITION BY order_info.user_id) AS cnt, row_number() OVER(PARTITION BY order_info.user_id ORDER BY order_info.date DESC) AS rk FROM order_info LEFT OUTER JOIN client ON order_info.client_id = client.id WHERE order_info.date > '2025-10-15' AND order_info.status = 'completed' AND product_name IN ( 'C++', 'Python', 'Java' ) ) AS order_info_ext WHERE order_info_ext.cnt >= 2 GROUP BY COALESCE(name, 'GroupBuy') ORDER BY COALESCE(name, 'GroupBuy') ASC ;