Verwendung von „distinct“:
public function countFollowers($user_id)
{
$select = $this->select()
->distinct()
->where('user_id = ?', $user_id);
$rowset = $this->fetchAll($select);
$rowCount = count($rowset);
return $rowCount;
}
EDIT:Nach der fraglichen Bearbeitung, um die Anzahl der Follower eines Benutzers zu erhalten . Sie müssen tatsächlich group verwenden NICHT eindeutig. Ich habe die folgende Abfrage getestet, um die zu zählenden Daten abzurufen,
Ich habe den Code nicht getestet, aber so etwas sollte funktionieren:
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;
}