Ik heb een aantal tabelgegevens gesimuleerd om mijn query te testen. WHERE
clausules moeten worden geplaatst na JOIN
s. Je bent ook een beetje dubbelzinnig over de vergelijking van COUNT
EN 5
-- als je meer dan 5 wilt, dan >5
, als je er 5 of meer wilt dan >=5
.
SQL:(SQLFiddle-demo )
SELECT a.user_id,a.username,COUNT(b.user_id)
FROM users a
INNER JOIN articles b ON a.user_id=b.user_id
WHERE a.type=3
GROUP BY a.user_id
HAVING COUNT(b.user_id)>5
ORDER BY RAND()
LIMIT 4