Richtige Lösung:
Einfach DISTINCT nutzen bei mitglieder.uid um doppelte zu filtern.Code:SELECT mitglieder.werber, COUNT(DISTINCT mitglieder.id) AS menge, COUNT(teilnahmen.id) AS teilnahmen FROM mitglieder LEFT JOIN teilnahmen ON teilnahmen.uid=mitglieder.id AND teilnahmen.zeit >= '.$start.' AND teilnahmen.zeit <= '.$ende.' WHERE mitglieder.status="aktiv" AND mitglieder.werber > 0 AND mitglieder.registrierung >= '.$start.' AND mitglieder.registrierung <= '.$ende.' GROUP BY teilnahmen.uid, mitglieder.werber HAVING teilnahmen >= '.$min.' ORDER BY menge DESC LIMIT 10




Zitieren