Använder distinkt:
public function countFollowers($user_id)
{
$select = $this->select()
->distinct()
->where('user_id = ?', $user_id);
$rowset = $this->fetchAll($select);
$rowCount = count($rowset);
return $rowCount;
}
EDIT:Efter redigeringen i fråga för att få antalet följare av en användare . Du måste faktiskt använda grupp INTE distinkt. Jag har testat att följande fråga fungerar för att hämta data som ska räknas()ed,
Jag har inte testat koden, men något sånt här borde fungera:
public function countFollowers($user_id)
{
$select = $this->select()
->where('user_id = ?', $user_id)
->group(array('user_id', 'follower_id'));
$rowset = $this->fetchAll($select);
$rowCount = count($rowset);
return $rowCount;
}