Joachim: mysql, join und group by

Hi,

Bitte um sql-Unterstuetzung. Eine Tabelle enthaelt unique id's, eine andere toid's, die diesen id' zugeordnet sind. Nicht jede id besitzt aber toid's. Ich moechte herausfinden, wie viele toid's jede id besitzt - aber auch jede id ausgeben. Wenn ich es so versuche:
SELECT a.id, COUNT(b.toid)
FROM a,b
WHERE a.id = b.toid
GROUP BY  a.id

bekomme ich ein Ergebnis nur fuer die id's, welche toid's besitzen, was angesichts der where clause klar ist. Wie aber kann ich mir zusaetzlich die id's ausgeben lassen, die keine toid's besitzen? Meine Sql-Kenntnisse sind leider recht beschraenkt...

Gruesse, Joachim

--
Am Ende wird alles gut.
  1. SELECT a.id, COUNT(b.toid)
    FROM a,b
    WHERE a.id = b.toid
    GROUP BY  a.id

    Wie aber kann ich mir zusaetzlich die id's ausgeben lassen, die keine toid's besitzen?

    Meinst du das so?

    SELECT a.id, COUNT( b.toid )
    FROM a LEFT JOIN b ON a.id = b.toid
    GROUP BY a.id

    Ein LEFT JOIN liefert alle linken Felder auch wenn es keine rechten dazu gibt.

    1. Hi dedlfix,

      Ein LEFT JOIN liefert alle linken Felder auch wenn es keine rechten

      perfekt :-) Ich sehe, dass ich mich mit diesen joins noch mal ausfuehrlicher auseinandersetzen muss.

      Danke und Gruesse, Joachim

      --
      Am Ende wird alles gut.