Ilja: DANKE

Beitrag lesen

yo,

SELECT COUNT(DISTINCT gruppen_id) +

jede Gruppe einmal, aber nicht die Gruppe NULL

genau, agregat-funktionen zählen keine NULL Werte.

COUNT(DISTINCT IF(gruppen_id IS NULL, besucher_id, NULL))

wandelt die Gruppe NULL in einen anderen, immer unterschiedlichen Wert (z.B. besucher_id), macht alle anderen Gruppen zu NULL, die damit nicht gezählt werden.

einfacher gesagt, wenn die gruppenspalte einen NULL wert hat, dann zähle die besucherspalte.

Ilja