phpbar.de logo

Mailinglisten-Archive

Doppelte DS ausklammern
Archiv Mailingliste mysql-de

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Doppelte DS ausklammern



Hi.

Ich hab mal wieder ein Problem, bei dem ich eure Denkanstöße brauche:

Ich habe in meiner Vereinsverwaltung zwei Tabellen:
1. mitgl (Eltern)
     MID
     Name
     Adr
     ...

2. kind  (deren Kinder)
     KID
     MID
     VName
     Klasse
     ...

die zweite ist mit der ersten über die Mitgliedsnummer (MID) verknüpft.
Einige Mitglieder (Eltern) haben mehrere Kinder, daher auch in kind
mehrere Einträge in kind. Teilweise sind die Kinder nicht mehr an der
Schule und haben dann NULL im Feld "Klasse".
Ein paar Mitglieder (z.B. Lehrer) haben kein Kind an der Schule, daher
kein DS in kind.

Nun zum eigentlichen Problem:

Um die Mitglieder anzuschreiben und die Briefe über die Kinder zu
verteilen brauche ich zum einen die Mitglieds-Daten und zum anderen die
Namen der Kinder. Das mache ich über eine LEFT JOIN:
select mitgl.Name, mitgl.Adr, kind.Vname, kind.Klasse from mitgl left join
kind using (MID) where ...

Nun bekomme ich aber bei den Mitgliedern mit mehreren Kinder auch
ebensoviele Datensätze! Ich will aber nur einen, zweckmäßiger Weise die
mit den Kind in der höchsten Klasse. Dabei dürfen die Mitglieder ohne
Kinder aber nicht unter den Tisch fallen.

Ich hab schon einiges probiert, aber es will nix vernünftiges dabei
rauskommen :-(

Wie krieg ich das hin, möglichst mit nur einer Abfrage? Hat jemand eine
Idee?

Ciao, Rene

-- 

---
*** Weitere Infos zur Mailingliste und MySQL unter http://www.4t2.com/mysql 


Home | Main Index | Thread Index

php::bar PHP Wiki   -   Listenarchive