SELECT comments.comment_id, comments.descr, comments.created, usrs.usr_name,
(SELECT COUNT(*) FROM comment_likers WHERE comment_id=comments.comment_id AND liker=1)likes,
(SELECT COUNT(*) FROM comment_likers WHERE comment_id=comments.comment_id AND liker=0)dislikes
liker
FROM comments
INNER JOIN usrs ON ( comments.usr_id = usrs.usr_id )
LEFT JOIN comment_likers ON ( comments.comment_id = comment_likers.comment_id
AND comment_likers.usr_id = $usrID )
WHERE comments.topic_id=$tpcID
ORDER BY comments.created DESC;
Няколко бележки. Не бях много сигурен какво трябваше да постигне второто ляво присъединяване към comment_likers (това, което използва $usrID). Интересувате ли се само от харесвания по конкретна тема от конкретен потребител?
Освен това може да помислите за промяна на схемата за created
коментари да бъде дата и час вместо varchar.