Eddie: Eine DB-Abfrage statt zweien...

Beitrag lesen

Hallo allerseits,

ich habe gerade ein bloedes Problem, und frage mich, wie ich das mit einer einzigen DB-Abfrage lösen kann! Müsste meiner Meinung nach gehen, nur wie???

Folgende Tabelle familyMember habe ich (ok, ist ein vereinfachtes Beispiel):

familyMember:
  id
  isFather
  familyName

Ich möchte jetzt die 10 größten Familien finden und anschließend die Väter (gibt's pro Familie nur einmal) als Datensatz zurückbekommen!

Bisher mache ich das so:

  
  SELECT familyMember.familyName, COUNT( * ) AS count  
  FROM familyMember  
  GROUP familyMember.familyName  
  ORDER BY count DESC  
  LIMIT 0 , 10  

Anschließend kommen die gefunden Familiennamen hier rein, wobei ich noch nicht rausgefunden habe, wie ich dieselbe "ORDER BY"-Reihenfolge wie oben erhalte:

  
  SELECT *  
  FROM familyMember  
  WHERE familyName IN (... hier die Ergebnisse der ersten Abfrage...)  

Lässt sich das nicht irgendwie kombinieren?

Danke für eure Hilfe,
Eddie

--
Old men and far travelers may lie with authority.