可以参考一下。
WITH order_new AS (
SELECT *
FROM (
SELECT
*,
count(*) OVER (PARTITION BY user_id) rk
FROM order_info o
WHERE date > '2025-10-15'
AND product_name IN ('C++', 'Java', 'Python')
AND status = 'completed'
)t1
WHERE t1.rk > 1
)
SELECT
DISTINCT ifnull(c.name,'GroupBuy') source,
count(*) OVER (PARTITION BY c.name) cnt
FROM order_new o
LEFT JOIN client c
ON o.client_id = c.id
ORDER BY source;