dave: MYSQL AGFRAGE

Hallo!

Ich habe folgendes Problem:
Datenbank:
human (name, gender, age) //name = Primärschl.
parent (ParentName, ChildName)//ParentName = Primärschl.

Nun möchte ich abfragen wieviele Kinder eine Frau im Durchschnitt hat.

Hat jemand einen Ansatz für dieses Problem?

Vielen Dank im Vorraus

  1. Tag dave.

    human (name, gender, age) //name = Primärschl.
    parent (ParentName, ChildName)//ParentName = Primärschl.
    Nun möchte ich abfragen wieviele Kinder eine Frau im Durchschnitt hat.

    Oje, daran habe ich mir auch schon die Zähne ausgebissen. Letztlich habe ich es in PHP so gelöst:

    $statement = "SELECT COUNT( DISTINCT ParentName ) AS Anzahl, COUNT( ParentName ) AS Gesamt FROM parent";  
    $result = mysql_query($statement);  
    $row = mysql_fetch_assoc($result);  
    $average = $row['Gesamt'] / $row['Anzahl'];  
    echo $row['Anzahl'] . " Eltern haben durchschnittlich " . $average . " Kinder.";
    

    Vielleicht hilft's.

    Siechfred

  2. yo,

    human (name, gender, age) //name = Primärschl.
    parent (ParentName, ChildName)//ParentName = Primärschl.

    der primärschlüssel scheint mir in der parent tabelle ungeeignet zu sein. meiner meinung nach kann man mehr als ein kind haben. aber in der heutigen zeit bin ich mir da nicht so sicher. wie auch immer, ich würde den pk über beide spalten bilden. und auch dass scheint mir nicht ganz wasserfest zu sein, schließlich können kinder und eltern auf den gleichen namen hören. eine künstliche id wäre anzuraten.

    des weiteren handelt es sich wieder um rekursive beziehungen der beiden tabellen. aber das ist ein thema für sich. nur soviel, es kann dadurch ein "kreisverkehr" der beiden tabellen entstehen. jana ist mutter von petra, petra ist mutter von anke und anke ist mutter von petra.

    Nun möchte ich abfragen wieviele Kinder eine Frau im Durchschnitt hat.

    nun der durchschnitt berechnet sich aus der anzahl aller erwachsenen frauen durch die anzahl der kinder. das bedeutet in deinem falle, erst einmal festzustellen, was sind erwachsene und was nicht. sind auch die kinder in der human tabelle gespeichert oder nicht und wenn ja, wie unterscheide ich einen erwachsenen von einem kind, schließlich könnten kinder auch über mehr als zwei generationen in der tabelle sein, etc, ? das und einiges mehr sollte man erst einmal wissen.....

    Ilja

    1. yo,

      des weiteren handelt es sich wieder um rekursive beziehungen der beiden tabellen. aber das ist ein thema für sich. nur soviel, es kann dadurch ein "kreisverkehr" der beiden tabellen entstehen. jana ist mutter von petra, petra ist mutter von anke und anke ist mutter von petra.

      das ist nicht richtig, habe dort zu schnell geschossen. so wie es aussieht, handelt es sich nicht um rekursive beziehungen. will mich da aber nicht 100% festlegen, weil ich nicht genau weiß, wie dein daten-design gemeint ist.

      Ilja