Я пишу запрос на очистку подписки, в котором должны быть выбраны все отмененные подписки, у которых у пользователей нет других активных подписок (приложение допускает несколько подписок на пользователя).
Я начал с этого:
SELECT * FROM subscriptions s WHERE status = 'canceled' AND (SELECT COUNT(*) FROM subscriptions s2 where s2.user_id = s.user_id AND status = 'active') = 0;
Однако я чувствую, что должен быть более простой / более простой / более производительный способ.