Ваш запрос синтаксически неверен, так как вы всегда должны выбирать поля, упомянутые в предложении GROUP BY
, хотя MySQL позволяет указывать другие поля, вы должны знать, что большую часть времени вы будете получать непредсказуемые результаты.При этом, возможно, это запрос, который вы ищете:
SELECT participants.contest_id, COUNT(DISTINCT participants.user_id) AS 'Number of users'
FROM db_user
LEFT JOIN participants ON participants.user_id = db_user.db_user
LEFT JOIN contest ON participants.contest_id = contest.contest_id
WHERE contest.user_id = $user
GROUP BY participants.contest_id;