Puoi semplificare la tua query e utilizzare LEAST funzione
SELECT USERid, LEAST(7, COUNT(*))
FROM table
GROUP BY USERid
dalla domanda nel tuo commento
SELECT SUM(countByUser)
FROM
(SELECT LEAST(7, COUNT(*)) as countByUser
FROM table
GROUP BY USERid) c