Bonjour Pierre,
mes connaissances SQL sont un peu rouillées, mais faire la restriction directement au niveau de la jointure ça ne fonctionnerait pas ?
JOIN prefix_role_assignments AS a ON (a.userid = u.id AND a.roleid = 5)
Ou avec un HAVING à la fin de la requête ?