Вы получаете "двойные" результаты, скорее всего потому, что запрос приводит к чему-то другому, чем вы ожидаете.
Если я правильно понимаю вашу структуру таблиц; у вас есть отношение один-ко-многим из сообщений фолловерам.
Однако в своем запросе вы выбираете комбинации сообщений и подписчиков. Каждая строка будет состоять из уникальной комбинации сообщения <> follower.
Короче говоря; если у одного сообщения два подписчика, в результате вы получите две строки с одним и тем же сообщением; но другая запись подписчика.
Если вы хотите показать каждое сообщение один раз; и затем перечислите всех подписчиков на сообщение, вы можете использовать функции группировки по группам (например, group_concat) и группировки по записям в сообщениях. Другой возможностью является выборка подписчиков в отдельном запросе после извлечения строки сообщения, а затем печать результатов этого запроса в качестве подписчиков для этого сообщения.
Если вы просто пытаетесь получить количество подписчиков; вы можете использовать группирование по UID вашей таблицы сообщений и добавить счетчик по UID или идентификатору пользователя в таблице последователей. (Не делайте этого с group-by, выборка * из не должна использоваться; но отдельные столбцы могут.)