Do you have for each user.user_id an entry in user_ratings? And if no, do you want to have results for these "empty" users as well?
If not, it's an easy JOIN:
SELECT
users.*,
AVG(user_ratings.rating),
COUNT(user_ratings.rating)
FROM
users,
user_ratings
WHERE
users.user_id = user_ratings.for_user_id
GROUP BY
user_ratings.for_user_id
Note: this will not return any users without any matching row in user_ratings. If you need these as well, you'ld need to create a LEFT JOIN.