Попробуйте этот запрос к вашей БД:
SELECT u.id, COUNT(s.*)
FROM users u
LEFT JOIN signups s ON s.userid = u.id
GROUP BY u.id
Надеюсь, я правильно понял.У меня нет базы данных SQL, чтобы проверить это прямо здесь.Важно: Вы должны группировать по каждому выбранному вами полю, которое не является агрегированным.
Редактировать:
Если это еще недостаточно быстро, индекс на signups.userid
может помочьОднако это гипотетически, поэтому вам следует проверить план выполнения, сгенерированный вашим механизмом запросов.