#998

Оплаченные заказы по покупателям без сырых повторов

Аналитика хочет увидеть, сколько заказов со status = 'paid' есть у каждого покупателя, у которого такие заказы есть. Уберите подход через сырые повторы и сделайте одну строку на user_id. Верните user_id и paid_count, отсортировав результат по user_id.

Исходный запрос
SELECT DISTINCT o.user_id, (SELECT COUNT(*) FROM orders o2 WHERE o2.user_id = o.user_id AND o2.status='paid') AS paid_count FROM orders o WHERE o.status='paid' AND o.user_id IS NOT NULL ORDER BY o.user_id

Пример ожидаемого ответа

Это пример правильного ответа — у него своё количество строк, оно не должно совпадать с таблицами в схеме.

user_idpaid_count
12
21

Здесь будет результат вашего запроса