Это - дает неверные значения для total_classes
SELECT IFNULL(count(wc.id_wc),0) AS total_classes
FROM `all_tag_relations` AS a
LEFT JOIN (tags AS t, WebClasses as wc)
ON ( a.id_tag = t.id_tag AND a.id_tutor = wc.id_author )
GROUP BY a.id_tutor
Но этот - с подзапросом дает правильные значения -
SELECT (SELECT IFNULL(count(wc.id_wc),0) FROM WebClasses as wc WHERE wc.id_author = a.id_tutor) AS total_classes
FROM `all_tag_relations` AS a
LEFT JOIN (tags AS t) ON ( a.id_tag = t.id_tag)
group by a.id_tutor
Решение
Решение состоит в том, чтобы объединить другие таблицы с реальной таблицей Tutors с помощью All_Tag_relations, подобной этой
...FROM Tutors as td on join All_Tag_Relations as a on td.id_tutor=a.id_tutor LEFT JOIN ...