Ergebnis 1 bis 5 von 5

Thema: [MySQL] Summe aller Werte eines Feldes

  1. #1

    [MySQL] Summe aller Werte eines Feldes

    Jo, was ich tun möchte ist, die Summe aller Werte eines Feldes noch im SELECT-Query errechnen lassen.
    Dafür sollte eigentlich die MySQL-eigene Funktion SUM() da sein, allerdings klappt das nicht.

    Angenommen ich habe die Felder "id", "name", "age".
    Nun möchte ich alle Alter aller eingetragenen Leute zusammenzählen. Wie stell ich das per SQL-Befehl an?

    mysql_result(mysql_query("SELECT SUM(age) as age_sum FROM people"), 0, age_sum);
    geht so leider nicht,
    mysql_result(mysql_query("SELECT SUM(age) FROM people"), 0, age);
    ebensowenig.

  2. #2
    Was heißt "geht nicht"?

    Ts, also von dir hätte ich mehr erwartet.

  3. #3
    Du könntest es ja mal mit 0 statt dem Feldnamen versuchen oder das Feld weglassen:

    PHP-Code:
    <?php
    mysql_result
    (mysql_query("SELECT SUM(`age`) FROM `people`"), 00);
    mysql_result(mysql_query("SELECT SUM(`age`) FROM `people`"), 0);
    ?>

  4. #4
    Zitat Zitat von Dingsi
    Was heißt "geht nicht"?

    Ts, also von dir hätte ich mehr erwartet.
    Nuja, 's spuckt halt einen resource-Error aus. Kennt man ja von mysql_result(). "Can't jump to row 0" oder Vergleichbares. Ich bin jetzt wie auch gestern in Eile, deswegen keine Zeit das nochmal zu scripten gehabt.

    Das üble an dieser Sache ist, dass ich mir sicher bin, genau diese SUM()-Funktion schonmal irgendwo in meinen Scripten, mit Erfolg, verwendet zu haben... aber ich erinner mich nicht wo. und nu alle Scripte des ehemaligen Squarenet durchzuackern... nope.
    Die MySQL-Referenz... welche übrigens echt das LETZTE ist, wenn man zum Vergleich das geniale PHP-Manual nebenan stellt, ist auch nicht gerade aufschlussreich. Da findet nur ein GROUP BY-Statement noch Verwendung im Zusammenhang mit der SUM()-Funktion, welches aber, für meine Zwecke, so nicht hilfreich ist. XD

    @ Manni: Jo, ich versuch mal später, danke schonmal im Voraus... auch wenn ich bezweifle das es funzt, also büdde weitere Vorschläge posten, wenn welche präsent sind.

    EDIT:
    Jo, Manni's Vorsachlag klappt tatsächlich... zumindest das mit dem letzten Argument weglassen.
    Hätt ich nu echt nicht gedacht, ich hätt schwören können dass der Fehler im Query selbst liegt. XD
    Man dankt jedenfalls recht herzlich.

    Geändert von Chocwise (20.03.2006 um 10:08 Uhr)

  5. #5
    Zitat Zitat von Chocwise
    mysql_result(mysql_query("SELECT SUM(age) as age_sum FROM people"), 0, age_sum);
    Öhm, hätte es nicht auch mysql_result(mysql_query("SELECT SUM(age) as age_sum FROM people"), 0, "age_sum"); heißen müssen? o_O
    BTW, danke, irgendwie kannte ich die mysql_result-Funktion gar nicht. Hab mir dafür immer ne extra Funktion geschrieben. Mal sehen, ob ich das evtl. gebrauchen kann

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •